Skip to content

[MISC] Rename taichi => gstaichi#1532

Closed
hughperkins wants to merge 2 commits intoGenesis-Embodied-AI:mainfrom
hughperkins:hp/rename-gstaichi
Closed

[MISC] Rename taichi => gstaichi#1532
hughperkins wants to merge 2 commits intoGenesis-Embodied-AI:mainfrom
hughperkins:hp/rename-gstaichi

Conversation

@hughperkins
Copy link
Collaborator

Description

Related Issue

Resolves Genesis-Embodied-AI/Genesis#

Motivation and Context

How Has This Been / Can This Be Tested?

ran TI_LOG_LEVEL=trace python examples/rigid/single_franka_envs.py -n 2 --horizon 2 once. It didnt crash.

Screenshots (if appropriate):

Checklist:

  • I read the CONTRIBUTING document.
  • I followed the Submitting Code Changes section of CONTRIBUTING document.
  • I tagged the title correctly (including BUG FIX/FEATURE/MISC/BREAKING)
  • I updated the documentation accordingly or no change is needed.
  • I tested my changes and added instructions on how to test it for reviewers.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

- [GsTaichi](https://github.com/taichi-dev/gstaichi):提供高性能跨平台计算后端。感谢 gstaichi 的所有成员提供的技术支持!
- [FluidLab](https://github.com/zhouxian/FluidLab) 提供参考 MPM 求解器实现
- [SPH_Taichi](https://github.com/erizmr/SPH_Taichi) 提供参考 SPH 求解器实现
- [SPH_GsTaichi](https://github.com/erizmr/SPH_GsTaichi) 提供参考 SPH 求解器实现
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should probably be careful with urls 🤔 Might be able to update the script to handle those somehow perhaps 🤔

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(otherwise could just add them case-by-case to the script)

@Kashu7100
Copy link
Collaborator

I am not sure how easy it is but is it possible to import as taichi while the pypi package is gstaichi (like importing as genesis but package is genesis-world)?

@hughperkins
Copy link
Collaborator Author

I am not sure how easy it is but is it possible to import as taichi while the pypi package is gstaichi (like importing as genesis but package is genesis-world)?

This would cause conflicts if someone installed both taichi and gstaichi in the same python environment.

Considering that many people installing Genesis are likely doing an upgrade from an earlier installation of Genesis, they will already have taichi installed, and would encounter the conflict.


Genesis's development has been made possible thanks to these open-source projects:

- [GsTaichi](https://github.com/taichi-dev/gstaichi): High-performance cross-platform compute backend. Kudos to the GsTaichi team for their technical support!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wrong

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As stated above, we should probably be careful with URLs somehow, yes. Eg hardcode them inssdie the migration script, case by case.


- [GsTaichi](https://github.com/taichi-dev/gstaichi): High-performance cross-platform compute backend. Kudos to the GsTaichi team for their technical support!
- [FluidLab](https://github.com/zhouxian/FluidLab): Reference MPM solver implementation.
- [SPH_GsTaichi](https://github.com/erizmr/SPH_GsTaichi): Reference SPH solver implementation.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrong

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need to change this file.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The script changes all files. If you prefer to make the minimum changes necessary, this scripted approach might not be the best approach for you.

* Add GJK-EPA algorithm for rigid body collision detection. (@SonSang) (#1213, #1357)
* Add linear_corotated elastic material for FEM. (@Libero0809) (#1304)
* Add fast vs high-performance taichi compilation mode. (@hughperkins) (#1330)
* Add fast vs high-performance gstaichi compilation mode. (@hughperkins) (#1330)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrong

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is this wrong? 🤔

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because it is related to an old PR that was based on taichi.

* Fix genesis destroy. (@duburcqa) (#1007)
* Fix issue when adding multiple FEM entities. (@kosuke1701) (#1014)
* Using Vulkan backend for taichi even if no Intel XPU device is available. (@duburcqa) (#1025)
* Using Vulkan backend for gstaichi even if no Intel XPU device is available. (@duburcqa) (#1025)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrong

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is this wrong? 🤔

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same reason. Old PR based on taichi.

pytestmark = [
pytest.mark.benchmarks,
pytest.mark.taichi_offline_cache(False),
pytest.mark.gstaichi_offline_cache(False),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

noise.


else:
raise NotImplementedError(f"Taichi func with arity in={num_inputs},out={num_outputs} not supported")
raise NotImplementedError(f"GsTaichi func with arity in={num_inputs},out={num_outputs} not supported")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

noise.

Comment on lines -109 to +110
def test_utils_geom_taichi_vs_tensor_consistency(batch_shape):
import taichi as ti
def test_utils_geom_gstaichi_vs_tensor_consistency(batch_shape):
import gstaichi as ti
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

noise.

Comment on lines -196 to +197
def test_utils_geom_taichi_inverse(batch_shape):
import taichi as ti
def test_utils_geom_gstaichi_inverse(batch_shape):
import gstaichi as ti
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

noise.

Comment on lines -241 to +242
def test_utils_geom_taichi_identity(batch_shape):
import taichi as ti
def test_utils_geom_gstaichi_identity(batch_shape):
import gstaichi as ti
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

noise.

@duburcqa duburcqa changed the title [MISC][BREAKING] Rename taichi => gstaichi [MISC] Rename taichi => gstaichi Aug 11, 2025
@hughperkins
Copy link
Collaborator Author

I thought I'd closed this, but for some reason seem not to have 🤔 @duburcqa and I discussed that the approach in this PR causes far too many renames, and a much lighter weight approach - only changing the imports - could be appropriate.
=> closing this PR.

@hughperkins hughperkins deleted the hp/rename-gstaichi branch January 20, 2026 10:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants