gstaichi 2.1.1rc3__cp312-cp312-macosx_11_0_arm64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- gstaichi/CHANGELOG.md +4 -0
- gstaichi/__init__.py +40 -0
- gstaichi/_funcs.py +706 -0
- gstaichi/_kernels.py +420 -0
- gstaichi/_lib/__init__.py +3 -0
- gstaichi/_lib/core/__init__.py +0 -0
- gstaichi/_lib/core/gstaichi_python.cpython-312-darwin.so +0 -0
- gstaichi/_lib/core/gstaichi_python.pyi +2909 -0
- gstaichi/_lib/core/py.typed +0 -0
- gstaichi/_lib/runtime/libMoltenVK.dylib +0 -0
- gstaichi/_lib/runtime/runtime_arm64.bc +0 -0
- gstaichi/_lib/utils.py +243 -0
- gstaichi/_logging.py +131 -0
- gstaichi/_snode/__init__.py +5 -0
- gstaichi/_snode/fields_builder.py +187 -0
- gstaichi/_snode/snode_tree.py +34 -0
- gstaichi/_test_tools/__init__.py +18 -0
- gstaichi/_test_tools/dataclass_test_tools.py +36 -0
- gstaichi/_test_tools/load_kernel_string.py +30 -0
- gstaichi/_test_tools/textwrap2.py +6 -0
- gstaichi/_version.py +1 -0
- gstaichi/_version_check.py +100 -0
- gstaichi/ad/__init__.py +3 -0
- gstaichi/ad/_ad.py +530 -0
- gstaichi/algorithms/__init__.py +3 -0
- gstaichi/algorithms/_algorithms.py +117 -0
- gstaichi/assets/.git +1 -0
- gstaichi/assets/Go-Regular.ttf +0 -0
- gstaichi/assets/static/imgs/ti_gallery.png +0 -0
- gstaichi/examples/lcg_python.py +26 -0
- gstaichi/examples/lcg_taichi.py +34 -0
- gstaichi/examples/minimal.py +28 -0
- gstaichi/experimental.py +16 -0
- gstaichi/lang/__init__.py +50 -0
- gstaichi/lang/_dataclass_util.py +31 -0
- gstaichi/lang/_fast_caching/__init__.py +3 -0
- gstaichi/lang/_fast_caching/args_hasher.py +110 -0
- gstaichi/lang/_fast_caching/config_hasher.py +30 -0
- gstaichi/lang/_fast_caching/fast_caching_types.py +21 -0
- gstaichi/lang/_fast_caching/function_hasher.py +57 -0
- gstaichi/lang/_fast_caching/hash_utils.py +11 -0
- gstaichi/lang/_fast_caching/python_side_cache.py +52 -0
- gstaichi/lang/_fast_caching/src_hasher.py +75 -0
- gstaichi/lang/_kernel_impl_dataclass.py +212 -0
- gstaichi/lang/_ndarray.py +352 -0
- gstaichi/lang/_ndrange.py +152 -0
- gstaichi/lang/_template_mapper.py +195 -0
- gstaichi/lang/_texture.py +172 -0
- gstaichi/lang/_wrap_inspect.py +215 -0
- gstaichi/lang/any_array.py +99 -0
- gstaichi/lang/ast/__init__.py +5 -0
- gstaichi/lang/ast/ast_transformer.py +1323 -0
- gstaichi/lang/ast/ast_transformer_utils.py +346 -0
- gstaichi/lang/ast/ast_transformers/__init__.py +0 -0
- gstaichi/lang/ast/ast_transformers/call_transformer.py +324 -0
- gstaichi/lang/ast/ast_transformers/function_def_transformer.py +304 -0
- gstaichi/lang/ast/checkers.py +106 -0
- gstaichi/lang/ast/symbol_resolver.py +57 -0
- gstaichi/lang/ast/transform.py +9 -0
- gstaichi/lang/common_ops.py +310 -0
- gstaichi/lang/exception.py +80 -0
- gstaichi/lang/expr.py +180 -0
- gstaichi/lang/field.py +428 -0
- gstaichi/lang/impl.py +1243 -0
- gstaichi/lang/kernel_arguments.py +155 -0
- gstaichi/lang/kernel_impl.py +1341 -0
- gstaichi/lang/matrix.py +1835 -0
- gstaichi/lang/matrix_ops.py +341 -0
- gstaichi/lang/matrix_ops_utils.py +190 -0
- gstaichi/lang/mesh.py +687 -0
- gstaichi/lang/misc.py +782 -0
- gstaichi/lang/ops.py +1494 -0
- gstaichi/lang/runtime_ops.py +13 -0
- gstaichi/lang/shell.py +35 -0
- gstaichi/lang/simt/__init__.py +5 -0
- gstaichi/lang/simt/block.py +94 -0
- gstaichi/lang/simt/grid.py +7 -0
- gstaichi/lang/simt/subgroup.py +191 -0
- gstaichi/lang/simt/warp.py +96 -0
- gstaichi/lang/snode.py +489 -0
- gstaichi/lang/source_builder.py +150 -0
- gstaichi/lang/struct.py +810 -0
- gstaichi/lang/util.py +312 -0
- gstaichi/linalg/__init__.py +8 -0
- gstaichi/linalg/matrixfree_cg.py +310 -0
- gstaichi/linalg/sparse_cg.py +59 -0
- gstaichi/linalg/sparse_matrix.py +303 -0
- gstaichi/linalg/sparse_solver.py +123 -0
- gstaichi/math/__init__.py +11 -0
- gstaichi/math/_complex.py +205 -0
- gstaichi/math/mathimpl.py +886 -0
- gstaichi/profiler/__init__.py +6 -0
- gstaichi/profiler/kernel_metrics.py +260 -0
- gstaichi/profiler/kernel_profiler.py +586 -0
- gstaichi/profiler/memory_profiler.py +15 -0
- gstaichi/profiler/scoped_profiler.py +36 -0
- gstaichi/sparse/__init__.py +3 -0
- gstaichi/sparse/_sparse_grid.py +77 -0
- gstaichi/tools/__init__.py +12 -0
- gstaichi/tools/diagnose.py +117 -0
- gstaichi/tools/np2ply.py +364 -0
- gstaichi/tools/vtk.py +38 -0
- gstaichi/types/__init__.py +19 -0
- gstaichi/types/annotations.py +52 -0
- gstaichi/types/compound_types.py +71 -0
- gstaichi/types/enums.py +49 -0
- gstaichi/types/ndarray_type.py +169 -0
- gstaichi/types/primitive_types.py +206 -0
- gstaichi/types/quant.py +88 -0
- gstaichi/types/texture_type.py +85 -0
- gstaichi/types/utils.py +11 -0
- gstaichi-2.1.1rc3.data/data/include/GLFW/glfw3.h +6389 -0
- gstaichi-2.1.1rc3.data/data/include/GLFW/glfw3native.h +594 -0
- gstaichi-2.1.1rc3.data/data/include/spirv-tools/instrument.hpp +268 -0
- gstaichi-2.1.1rc3.data/data/include/spirv-tools/libspirv.h +907 -0
- gstaichi-2.1.1rc3.data/data/include/spirv-tools/libspirv.hpp +375 -0
- gstaichi-2.1.1rc3.data/data/include/spirv-tools/linker.hpp +97 -0
- gstaichi-2.1.1rc3.data/data/include/spirv-tools/optimizer.hpp +970 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/GLSL.std.450.h +114 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv.h +2568 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv.hpp +2579 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cfg.hpp +168 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_common.hpp +1920 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cpp.hpp +93 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cross.hpp +1171 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cross_c.h +1074 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cross_containers.hpp +754 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cross_error_handling.hpp +94 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cross_parsed_ir.hpp +256 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_cross_util.hpp +37 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_glsl.hpp +1001 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_hlsl.hpp +406 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_msl.hpp +1273 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_parser.hpp +103 -0
- gstaichi-2.1.1rc3.data/data/include/spirv_cross/spirv_reflect.hpp +91 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools/SPIRV-ToolsConfig.cmake +5 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools/SPIRV-ToolsTarget-release.cmake +29 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake +114 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-diff/SPIRV-Tools-diffConfig.cmake +5 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-diff/SPIRV-Tools-diffTargets-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-diff/SPIRV-Tools-diffTargets.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-link/SPIRV-Tools-linkConfig.cmake +5 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-link/SPIRV-Tools-linkTargets-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-link/SPIRV-Tools-linkTargets.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-lint/SPIRV-Tools-lintConfig.cmake +5 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-lint/SPIRV-Tools-lintTargets-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-lint/SPIRV-Tools-lintTargets.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optConfig.cmake +5 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optTargets-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-opt/SPIRV-Tools-optTargets.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-reduce/SPIRV-Tools-reduceConfig.cmake +5 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-reduce/SPIRV-Tools-reduceTarget-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/SPIRV-Tools-reduce/SPIRV-Tools-reduceTarget.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/glfw3/glfw3Config.cmake +3 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/glfw3/glfw3ConfigVersion.cmake +65 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/glfw3/glfw3Targets-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/lib/cmake/glfw3/glfw3Targets.cmake +107 -0
- gstaichi-2.1.1rc3.data/data/lib/libSPIRV-Tools-shared.dylib +0 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_c/cmake/spirv_cross_cConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_c/cmake/spirv_cross_cConfig.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_core/cmake/spirv_cross_coreConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_core/cmake/spirv_cross_coreConfig.cmake +106 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_cpp/cmake/spirv_cross_cppConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_cpp/cmake/spirv_cross_cppConfig.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_glsl/cmake/spirv_cross_glslConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_glsl/cmake/spirv_cross_glslConfig.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_hlsl/cmake/spirv_cross_hlslConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_hlsl/cmake/spirv_cross_hlslConfig.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_msl/cmake/spirv_cross_mslConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_msl/cmake/spirv_cross_mslConfig.cmake +123 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_reflect/cmake/spirv_cross_reflectConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_reflect/cmake/spirv_cross_reflectConfig.cmake +106 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_util/cmake/spirv_cross_utilConfig-release.cmake +19 -0
- gstaichi-2.1.1rc3.data/data/share/spirv_cross_util/cmake/spirv_cross_utilConfig.cmake +123 -0
- gstaichi-2.1.1rc3.dist-info/METADATA +106 -0
- gstaichi-2.1.1rc3.dist-info/RECORD +179 -0
- gstaichi-2.1.1rc3.dist-info/WHEEL +5 -0
- gstaichi-2.1.1rc3.dist-info/licenses/LICENSE +201 -0
- gstaichi-2.1.1rc3.dist-info/top_level.txt +1 -0
@@ -0,0 +1,19 @@
|
|
1
|
+
#----------------------------------------------------------------
|
2
|
+
# Generated CMake target import file for configuration "Release".
|
3
|
+
#----------------------------------------------------------------
|
4
|
+
|
5
|
+
# Commands may need to know the format version.
|
6
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
7
|
+
|
8
|
+
# Import target "spirv-cross-msl" for configuration "Release"
|
9
|
+
set_property(TARGET spirv-cross-msl APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
10
|
+
set_target_properties(spirv-cross-msl PROPERTIES
|
11
|
+
IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
|
12
|
+
IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libspirv-cross-msl.a"
|
13
|
+
)
|
14
|
+
|
15
|
+
list(APPEND _cmake_import_check_targets spirv-cross-msl )
|
16
|
+
list(APPEND _cmake_import_check_files_for_spirv-cross-msl "${_IMPORT_PREFIX}/lib/libspirv-cross-msl.a" )
|
17
|
+
|
18
|
+
# Commands beyond this point should not need to know the version.
|
19
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
@@ -0,0 +1,123 @@
|
|
1
|
+
# Generated by CMake
|
2
|
+
|
3
|
+
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
4
|
+
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
5
|
+
endif()
|
6
|
+
if(CMAKE_VERSION VERSION_LESS "2.8.12")
|
7
|
+
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
8
|
+
endif()
|
9
|
+
cmake_policy(PUSH)
|
10
|
+
cmake_policy(VERSION 2.8.12...3.29)
|
11
|
+
#----------------------------------------------------------------
|
12
|
+
# Generated CMake target import file.
|
13
|
+
#----------------------------------------------------------------
|
14
|
+
|
15
|
+
# Commands may need to know the format version.
|
16
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
17
|
+
|
18
|
+
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
19
|
+
set(_cmake_targets_defined "")
|
20
|
+
set(_cmake_targets_not_defined "")
|
21
|
+
set(_cmake_expected_targets "")
|
22
|
+
foreach(_cmake_expected_target IN ITEMS spirv-cross-msl)
|
23
|
+
list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
|
24
|
+
if(TARGET "${_cmake_expected_target}")
|
25
|
+
list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
|
26
|
+
else()
|
27
|
+
list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
|
28
|
+
endif()
|
29
|
+
endforeach()
|
30
|
+
unset(_cmake_expected_target)
|
31
|
+
if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
|
32
|
+
unset(_cmake_targets_defined)
|
33
|
+
unset(_cmake_targets_not_defined)
|
34
|
+
unset(_cmake_expected_targets)
|
35
|
+
unset(CMAKE_IMPORT_FILE_VERSION)
|
36
|
+
cmake_policy(POP)
|
37
|
+
return()
|
38
|
+
endif()
|
39
|
+
if(NOT _cmake_targets_defined STREQUAL "")
|
40
|
+
string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
|
41
|
+
string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
|
42
|
+
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
|
43
|
+
endif()
|
44
|
+
unset(_cmake_targets_defined)
|
45
|
+
unset(_cmake_targets_not_defined)
|
46
|
+
unset(_cmake_expected_targets)
|
47
|
+
|
48
|
+
|
49
|
+
# Compute the installation prefix relative to this file.
|
50
|
+
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
51
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
52
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
53
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
54
|
+
if(_IMPORT_PREFIX STREQUAL "/")
|
55
|
+
set(_IMPORT_PREFIX "")
|
56
|
+
endif()
|
57
|
+
|
58
|
+
# Create imported target spirv-cross-msl
|
59
|
+
add_library(spirv-cross-msl STATIC IMPORTED)
|
60
|
+
|
61
|
+
set_target_properties(spirv-cross-msl PROPERTIES
|
62
|
+
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include/spirv_cross"
|
63
|
+
INTERFACE_LINK_LIBRARIES "\$<LINK_ONLY:spirv-cross-glsl>"
|
64
|
+
)
|
65
|
+
|
66
|
+
# Load information for each installed configuration.
|
67
|
+
file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/spirv_cross_mslConfig-*.cmake")
|
68
|
+
foreach(_cmake_config_file IN LISTS _cmake_config_files)
|
69
|
+
include("${_cmake_config_file}")
|
70
|
+
endforeach()
|
71
|
+
unset(_cmake_config_file)
|
72
|
+
unset(_cmake_config_files)
|
73
|
+
|
74
|
+
# Cleanup temporary variables.
|
75
|
+
set(_IMPORT_PREFIX)
|
76
|
+
|
77
|
+
# Loop over all imported files and verify that they actually exist
|
78
|
+
foreach(_cmake_target IN LISTS _cmake_import_check_targets)
|
79
|
+
if(CMAKE_VERSION VERSION_LESS "3.28"
|
80
|
+
OR NOT DEFINED _cmake_import_check_xcframework_for_${_cmake_target}
|
81
|
+
OR NOT IS_DIRECTORY "${_cmake_import_check_xcframework_for_${_cmake_target}}")
|
82
|
+
foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
|
83
|
+
if(NOT EXISTS "${_cmake_file}")
|
84
|
+
message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
|
85
|
+
\"${_cmake_file}\"
|
86
|
+
but this file does not exist. Possible reasons include:
|
87
|
+
* The file was deleted, renamed, or moved to another location.
|
88
|
+
* An install or uninstall procedure did not complete successfully.
|
89
|
+
* The installation package was faulty and contained
|
90
|
+
\"${CMAKE_CURRENT_LIST_FILE}\"
|
91
|
+
but not all the files it references.
|
92
|
+
")
|
93
|
+
endif()
|
94
|
+
endforeach()
|
95
|
+
endif()
|
96
|
+
unset(_cmake_file)
|
97
|
+
unset("_cmake_import_check_files_for_${_cmake_target}")
|
98
|
+
endforeach()
|
99
|
+
unset(_cmake_target)
|
100
|
+
unset(_cmake_import_check_targets)
|
101
|
+
|
102
|
+
# Make sure the targets which have been exported in some other
|
103
|
+
# export set exist.
|
104
|
+
unset(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
|
105
|
+
foreach(_target "spirv-cross-glsl" )
|
106
|
+
if(NOT TARGET "${_target}" )
|
107
|
+
set(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets "${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets} ${_target}")
|
108
|
+
endif()
|
109
|
+
endforeach()
|
110
|
+
|
111
|
+
if(DEFINED ${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
|
112
|
+
if(CMAKE_FIND_PACKAGE_NAME)
|
113
|
+
set( ${CMAKE_FIND_PACKAGE_NAME}_FOUND FALSE)
|
114
|
+
set( ${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE "The following imported targets are referenced, but are missing: ${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets}")
|
115
|
+
else()
|
116
|
+
message(FATAL_ERROR "The following imported targets are referenced, but are missing: ${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets}")
|
117
|
+
endif()
|
118
|
+
endif()
|
119
|
+
unset(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
|
120
|
+
|
121
|
+
# Commands beyond this point should not need to know the version.
|
122
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
123
|
+
cmake_policy(POP)
|
gstaichi-2.1.1rc3.data/data/share/spirv_cross_reflect/cmake/spirv_cross_reflectConfig-release.cmake
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
#----------------------------------------------------------------
|
2
|
+
# Generated CMake target import file for configuration "Release".
|
3
|
+
#----------------------------------------------------------------
|
4
|
+
|
5
|
+
# Commands may need to know the format version.
|
6
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
7
|
+
|
8
|
+
# Import target "spirv-cross-reflect" for configuration "Release"
|
9
|
+
set_property(TARGET spirv-cross-reflect APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
10
|
+
set_target_properties(spirv-cross-reflect PROPERTIES
|
11
|
+
IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
|
12
|
+
IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libspirv-cross-reflect.a"
|
13
|
+
)
|
14
|
+
|
15
|
+
list(APPEND _cmake_import_check_targets spirv-cross-reflect )
|
16
|
+
list(APPEND _cmake_import_check_files_for_spirv-cross-reflect "${_IMPORT_PREFIX}/lib/libspirv-cross-reflect.a" )
|
17
|
+
|
18
|
+
# Commands beyond this point should not need to know the version.
|
19
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
@@ -0,0 +1,106 @@
|
|
1
|
+
# Generated by CMake
|
2
|
+
|
3
|
+
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
4
|
+
message(FATAL_ERROR "CMake >= 2.8.3 required")
|
5
|
+
endif()
|
6
|
+
if(CMAKE_VERSION VERSION_LESS "2.8.3")
|
7
|
+
message(FATAL_ERROR "CMake >= 2.8.3 required")
|
8
|
+
endif()
|
9
|
+
cmake_policy(PUSH)
|
10
|
+
cmake_policy(VERSION 2.8.3...3.29)
|
11
|
+
#----------------------------------------------------------------
|
12
|
+
# Generated CMake target import file.
|
13
|
+
#----------------------------------------------------------------
|
14
|
+
|
15
|
+
# Commands may need to know the format version.
|
16
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
17
|
+
|
18
|
+
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
19
|
+
set(_cmake_targets_defined "")
|
20
|
+
set(_cmake_targets_not_defined "")
|
21
|
+
set(_cmake_expected_targets "")
|
22
|
+
foreach(_cmake_expected_target IN ITEMS spirv-cross-reflect)
|
23
|
+
list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
|
24
|
+
if(TARGET "${_cmake_expected_target}")
|
25
|
+
list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
|
26
|
+
else()
|
27
|
+
list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
|
28
|
+
endif()
|
29
|
+
endforeach()
|
30
|
+
unset(_cmake_expected_target)
|
31
|
+
if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
|
32
|
+
unset(_cmake_targets_defined)
|
33
|
+
unset(_cmake_targets_not_defined)
|
34
|
+
unset(_cmake_expected_targets)
|
35
|
+
unset(CMAKE_IMPORT_FILE_VERSION)
|
36
|
+
cmake_policy(POP)
|
37
|
+
return()
|
38
|
+
endif()
|
39
|
+
if(NOT _cmake_targets_defined STREQUAL "")
|
40
|
+
string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
|
41
|
+
string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
|
42
|
+
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
|
43
|
+
endif()
|
44
|
+
unset(_cmake_targets_defined)
|
45
|
+
unset(_cmake_targets_not_defined)
|
46
|
+
unset(_cmake_expected_targets)
|
47
|
+
|
48
|
+
|
49
|
+
# Compute the installation prefix relative to this file.
|
50
|
+
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
51
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
52
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
53
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
54
|
+
if(_IMPORT_PREFIX STREQUAL "/")
|
55
|
+
set(_IMPORT_PREFIX "")
|
56
|
+
endif()
|
57
|
+
|
58
|
+
# Create imported target spirv-cross-reflect
|
59
|
+
add_library(spirv-cross-reflect STATIC IMPORTED)
|
60
|
+
|
61
|
+
set_target_properties(spirv-cross-reflect PROPERTIES
|
62
|
+
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include/spirv_cross"
|
63
|
+
)
|
64
|
+
|
65
|
+
# Load information for each installed configuration.
|
66
|
+
file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/spirv_cross_reflectConfig-*.cmake")
|
67
|
+
foreach(_cmake_config_file IN LISTS _cmake_config_files)
|
68
|
+
include("${_cmake_config_file}")
|
69
|
+
endforeach()
|
70
|
+
unset(_cmake_config_file)
|
71
|
+
unset(_cmake_config_files)
|
72
|
+
|
73
|
+
# Cleanup temporary variables.
|
74
|
+
set(_IMPORT_PREFIX)
|
75
|
+
|
76
|
+
# Loop over all imported files and verify that they actually exist
|
77
|
+
foreach(_cmake_target IN LISTS _cmake_import_check_targets)
|
78
|
+
if(CMAKE_VERSION VERSION_LESS "3.28"
|
79
|
+
OR NOT DEFINED _cmake_import_check_xcframework_for_${_cmake_target}
|
80
|
+
OR NOT IS_DIRECTORY "${_cmake_import_check_xcframework_for_${_cmake_target}}")
|
81
|
+
foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
|
82
|
+
if(NOT EXISTS "${_cmake_file}")
|
83
|
+
message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
|
84
|
+
\"${_cmake_file}\"
|
85
|
+
but this file does not exist. Possible reasons include:
|
86
|
+
* The file was deleted, renamed, or moved to another location.
|
87
|
+
* An install or uninstall procedure did not complete successfully.
|
88
|
+
* The installation package was faulty and contained
|
89
|
+
\"${CMAKE_CURRENT_LIST_FILE}\"
|
90
|
+
but not all the files it references.
|
91
|
+
")
|
92
|
+
endif()
|
93
|
+
endforeach()
|
94
|
+
endif()
|
95
|
+
unset(_cmake_file)
|
96
|
+
unset("_cmake_import_check_files_for_${_cmake_target}")
|
97
|
+
endforeach()
|
98
|
+
unset(_cmake_target)
|
99
|
+
unset(_cmake_import_check_targets)
|
100
|
+
|
101
|
+
# This file does not depend on other imported targets which have
|
102
|
+
# been exported from the same project but in a separate export set.
|
103
|
+
|
104
|
+
# Commands beyond this point should not need to know the version.
|
105
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
106
|
+
cmake_policy(POP)
|
@@ -0,0 +1,19 @@
|
|
1
|
+
#----------------------------------------------------------------
|
2
|
+
# Generated CMake target import file for configuration "Release".
|
3
|
+
#----------------------------------------------------------------
|
4
|
+
|
5
|
+
# Commands may need to know the format version.
|
6
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
7
|
+
|
8
|
+
# Import target "spirv-cross-util" for configuration "Release"
|
9
|
+
set_property(TARGET spirv-cross-util APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
10
|
+
set_target_properties(spirv-cross-util PROPERTIES
|
11
|
+
IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
|
12
|
+
IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libspirv-cross-util.a"
|
13
|
+
)
|
14
|
+
|
15
|
+
list(APPEND _cmake_import_check_targets spirv-cross-util )
|
16
|
+
list(APPEND _cmake_import_check_files_for_spirv-cross-util "${_IMPORT_PREFIX}/lib/libspirv-cross-util.a" )
|
17
|
+
|
18
|
+
# Commands beyond this point should not need to know the version.
|
19
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
@@ -0,0 +1,123 @@
|
|
1
|
+
# Generated by CMake
|
2
|
+
|
3
|
+
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
4
|
+
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
5
|
+
endif()
|
6
|
+
if(CMAKE_VERSION VERSION_LESS "2.8.12")
|
7
|
+
message(FATAL_ERROR "CMake >= 2.8.12 required")
|
8
|
+
endif()
|
9
|
+
cmake_policy(PUSH)
|
10
|
+
cmake_policy(VERSION 2.8.12...3.29)
|
11
|
+
#----------------------------------------------------------------
|
12
|
+
# Generated CMake target import file.
|
13
|
+
#----------------------------------------------------------------
|
14
|
+
|
15
|
+
# Commands may need to know the format version.
|
16
|
+
set(CMAKE_IMPORT_FILE_VERSION 1)
|
17
|
+
|
18
|
+
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
19
|
+
set(_cmake_targets_defined "")
|
20
|
+
set(_cmake_targets_not_defined "")
|
21
|
+
set(_cmake_expected_targets "")
|
22
|
+
foreach(_cmake_expected_target IN ITEMS spirv-cross-util)
|
23
|
+
list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
|
24
|
+
if(TARGET "${_cmake_expected_target}")
|
25
|
+
list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
|
26
|
+
else()
|
27
|
+
list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
|
28
|
+
endif()
|
29
|
+
endforeach()
|
30
|
+
unset(_cmake_expected_target)
|
31
|
+
if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
|
32
|
+
unset(_cmake_targets_defined)
|
33
|
+
unset(_cmake_targets_not_defined)
|
34
|
+
unset(_cmake_expected_targets)
|
35
|
+
unset(CMAKE_IMPORT_FILE_VERSION)
|
36
|
+
cmake_policy(POP)
|
37
|
+
return()
|
38
|
+
endif()
|
39
|
+
if(NOT _cmake_targets_defined STREQUAL "")
|
40
|
+
string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
|
41
|
+
string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
|
42
|
+
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
|
43
|
+
endif()
|
44
|
+
unset(_cmake_targets_defined)
|
45
|
+
unset(_cmake_targets_not_defined)
|
46
|
+
unset(_cmake_expected_targets)
|
47
|
+
|
48
|
+
|
49
|
+
# Compute the installation prefix relative to this file.
|
50
|
+
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
51
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
52
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
53
|
+
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
54
|
+
if(_IMPORT_PREFIX STREQUAL "/")
|
55
|
+
set(_IMPORT_PREFIX "")
|
56
|
+
endif()
|
57
|
+
|
58
|
+
# Create imported target spirv-cross-util
|
59
|
+
add_library(spirv-cross-util STATIC IMPORTED)
|
60
|
+
|
61
|
+
set_target_properties(spirv-cross-util PROPERTIES
|
62
|
+
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include/spirv_cross"
|
63
|
+
INTERFACE_LINK_LIBRARIES "\$<LINK_ONLY:spirv-cross-core>"
|
64
|
+
)
|
65
|
+
|
66
|
+
# Load information for each installed configuration.
|
67
|
+
file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/spirv_cross_utilConfig-*.cmake")
|
68
|
+
foreach(_cmake_config_file IN LISTS _cmake_config_files)
|
69
|
+
include("${_cmake_config_file}")
|
70
|
+
endforeach()
|
71
|
+
unset(_cmake_config_file)
|
72
|
+
unset(_cmake_config_files)
|
73
|
+
|
74
|
+
# Cleanup temporary variables.
|
75
|
+
set(_IMPORT_PREFIX)
|
76
|
+
|
77
|
+
# Loop over all imported files and verify that they actually exist
|
78
|
+
foreach(_cmake_target IN LISTS _cmake_import_check_targets)
|
79
|
+
if(CMAKE_VERSION VERSION_LESS "3.28"
|
80
|
+
OR NOT DEFINED _cmake_import_check_xcframework_for_${_cmake_target}
|
81
|
+
OR NOT IS_DIRECTORY "${_cmake_import_check_xcframework_for_${_cmake_target}}")
|
82
|
+
foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
|
83
|
+
if(NOT EXISTS "${_cmake_file}")
|
84
|
+
message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
|
85
|
+
\"${_cmake_file}\"
|
86
|
+
but this file does not exist. Possible reasons include:
|
87
|
+
* The file was deleted, renamed, or moved to another location.
|
88
|
+
* An install or uninstall procedure did not complete successfully.
|
89
|
+
* The installation package was faulty and contained
|
90
|
+
\"${CMAKE_CURRENT_LIST_FILE}\"
|
91
|
+
but not all the files it references.
|
92
|
+
")
|
93
|
+
endif()
|
94
|
+
endforeach()
|
95
|
+
endif()
|
96
|
+
unset(_cmake_file)
|
97
|
+
unset("_cmake_import_check_files_for_${_cmake_target}")
|
98
|
+
endforeach()
|
99
|
+
unset(_cmake_target)
|
100
|
+
unset(_cmake_import_check_targets)
|
101
|
+
|
102
|
+
# Make sure the targets which have been exported in some other
|
103
|
+
# export set exist.
|
104
|
+
unset(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
|
105
|
+
foreach(_target "spirv-cross-core" )
|
106
|
+
if(NOT TARGET "${_target}" )
|
107
|
+
set(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets "${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets} ${_target}")
|
108
|
+
endif()
|
109
|
+
endforeach()
|
110
|
+
|
111
|
+
if(DEFINED ${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
|
112
|
+
if(CMAKE_FIND_PACKAGE_NAME)
|
113
|
+
set( ${CMAKE_FIND_PACKAGE_NAME}_FOUND FALSE)
|
114
|
+
set( ${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE "The following imported targets are referenced, but are missing: ${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets}")
|
115
|
+
else()
|
116
|
+
message(FATAL_ERROR "The following imported targets are referenced, but are missing: ${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets}")
|
117
|
+
endif()
|
118
|
+
endif()
|
119
|
+
unset(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
|
120
|
+
|
121
|
+
# Commands beyond this point should not need to know the version.
|
122
|
+
set(CMAKE_IMPORT_FILE_VERSION)
|
123
|
+
cmake_policy(POP)
|
@@ -0,0 +1,106 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: gstaichi
|
3
|
+
Version: 2.1.1rc3
|
4
|
+
Summary: The GsTaichi Programming Language
|
5
|
+
Home-page: https://github.com/Genesis-Embedded-AI/gstaichi
|
6
|
+
Author: GsTaichi developers
|
7
|
+
License: Apache Software License (http://www.apache.org/licenses/LICENSE-2.0)
|
8
|
+
Keywords: graphics,simulation
|
9
|
+
Classifier: Development Status :: 5 - Production/Stable
|
10
|
+
Classifier: Topic :: Software Development :: Compilers
|
11
|
+
Classifier: Topic :: Multimedia :: Graphics
|
12
|
+
Classifier: Topic :: Games/Entertainment :: Simulation
|
13
|
+
Classifier: Intended Audience :: Science/Research
|
14
|
+
Classifier: Intended Audience :: Developers
|
15
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
20
|
+
Requires-Python: >=3.10,<4.0
|
21
|
+
Description-Content-Type: text/markdown; charset=UTF-8
|
22
|
+
License-File: LICENSE
|
23
|
+
Requires-Dist: numpy
|
24
|
+
Requires-Dist: colorama
|
25
|
+
Requires-Dist: dill
|
26
|
+
Requires-Dist: pydantic
|
27
|
+
Requires-Dist: rich
|
28
|
+
Requires-Dist: setuptools>=68.0.0
|
29
|
+
Requires-Dist: cffi>=1.16.0
|
30
|
+
Provides-Extra: docs
|
31
|
+
Requires-Dist: sphinx; extra == "docs"
|
32
|
+
Requires-Dist: sphinx-copybutton; extra == "docs"
|
33
|
+
Requires-Dist: myst_parser; extra == "docs"
|
34
|
+
Requires-Dist: sphinx-subfigure; extra == "docs"
|
35
|
+
Requires-Dist: sphinxcontrib-video; extra == "docs"
|
36
|
+
Requires-Dist: sphinx-togglebutton; extra == "docs"
|
37
|
+
Requires-Dist: sphinx-design; extra == "docs"
|
38
|
+
Requires-Dist: pydata-sphinx-theme; extra == "docs"
|
39
|
+
Requires-Dist: sphinx-autoapi; extra == "docs"
|
40
|
+
Dynamic: author
|
41
|
+
Dynamic: classifier
|
42
|
+
Dynamic: home-page
|
43
|
+
Dynamic: keywords
|
44
|
+
Dynamic: license
|
45
|
+
Dynamic: license-file
|
46
|
+
Dynamic: provides-extra
|
47
|
+
Dynamic: requires-dist
|
48
|
+
Dynamic: requires-python
|
49
|
+
Dynamic: summary
|
50
|
+
|
51
|
+
# GsTaichi
|
52
|
+
|
53
|
+
[GsTaichi](https://github.com/Genesis-Embodied-AI/gstaichi) was forked in June 2025. This repository (or gstaichi) is now a fully independent project with no intention of maintaining backward compatibility with the original taichi. Whilst the repo largely resembles upstream for now, we have made the following changes:
|
54
|
+
- revamped continuous integration, to run using recent python versions (up to 3.13), recent mac os x versions (up to 15), and to run reliably (at least 95% of runs with correct code succeed)
|
55
|
+
- added dataclasses.dataclass structs:
|
56
|
+
- work with both ndarrays and fields (cf ti.struct (field only), ti.dataclass (field only), ti.data_oriented (field only), argpack (ndarray only))
|
57
|
+
- can be passed into child `ti.func`tions (cf argpack)
|
58
|
+
- does not affect kernel runtime speed (kernels see only the underlying arrays, no indirection is added within the kernel layer)
|
59
|
+
- removed GUI/GGUI, C-API, AOT, DX11, DX12, IOS, Android, OpenGL, GLES
|
60
|
+
|
61
|
+
Planned features:
|
62
|
+
- reduce warm cache launch latency
|
63
|
+
- (maybe) add launch args caching, to reduce launch latency
|
64
|
+
- make dataclasses.dataclass nestable
|
65
|
+
|
66
|
+
Planned pruning:
|
67
|
+
- remove argpack
|
68
|
+
- remove ti CLI
|
69
|
+
- remove support for NVidia GPUs earlier than sm_60/Pascal
|
70
|
+
|
71
|
+
# What is gstaichi?
|
72
|
+
|
73
|
+
GsTaichi is a high performance multi-platform compiler, targeted at physics simulations. It compiles Python code into parallelizable kernels that can run on:
|
74
|
+
- NVidia GPUs, using CUDA
|
75
|
+
- Vulkan-compatible GPUs, using SPIR-V
|
76
|
+
- Mac Metal GPUs
|
77
|
+
- x86 and arm64 CPUs
|
78
|
+
|
79
|
+
GsTaichi supports automatic differentiation. GsTaichi lets you build fully fused GPU kernels, using Python.
|
80
|
+
|
81
|
+
[Genesis simulator](https://genesis-world.readthedocs.io/en/latest/)'s best-in-class performance can be largely attributed to Taichi, its underlying GPU acceleration framework for Python. Given how critical is this component, we decided to fork Taichi and build our own very framework from there, so that from now on, we are free to drive its development in the direction that best supports the continuous improvement of Genesis simulator.
|
82
|
+
|
83
|
+
# Installation
|
84
|
+
## Prerequisites
|
85
|
+
- Python 3.10-3.13
|
86
|
+
- Mac OS 14, 15, Windows, or Ubuntu 22.04-24.04 or compatible
|
87
|
+
|
88
|
+
## Procedure
|
89
|
+
```
|
90
|
+
pip install gstaichi
|
91
|
+
```
|
92
|
+
|
93
|
+
(For how to build from source, see our CI build scripts, e.g. [linux build scripts](.github/workflows/scripts_new/linux_x86/) )
|
94
|
+
|
95
|
+
# Documentation
|
96
|
+
|
97
|
+
- [docs](https://genesis-embodied-ai.github.io/gstaichi/user_guide/index.html)
|
98
|
+
- [API reference](https://genesis-embodied-ai.github.io/gstaichi/autoapi/index.html)
|
99
|
+
|
100
|
+
# Something is broken!
|
101
|
+
|
102
|
+
- [Create an issue](https://github.com/Genesis-Embodied-AI/gstaichi/issues/new/choose)
|
103
|
+
|
104
|
+
# Acknowledgements
|
105
|
+
|
106
|
+
- The original [Taichi](https://github.com/taichi-dev/taichi) was developed with love by many contributors over many years. For the full list of contributors and credits, see [Original taichi contributors](https://github.com/taichi-dev/taichi?tab=readme-ov-file#contributing)
|