gstaichi 2.1.1rc2__cp312-cp312-win_amd64.whl → 2.2.0__cp312-cp312-win_amd64.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 +1 -1
- gstaichi/_lib/core/gstaichi_python.cp312-win_amd64.pyd +0 -0
- gstaichi/_lib/core/gstaichi_python.pyi +9 -2
- gstaichi/_version.py +1 -1
- gstaichi/lang/_fast_caching/args_hasher.py +19 -7
- gstaichi/lang/_fast_caching/src_hasher.py +8 -0
- gstaichi/lang/impl.py +4 -0
- gstaichi/lang/kernel_impl.py +19 -2
- gstaichi/lang/misc.py +20 -14
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/bin/SPIRV-Tools-shared.dll +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/SPIRV-Tools-diff.lib +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/SPIRV-Tools-link.lib +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/SPIRV-Tools-lint.lib +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/SPIRV-Tools-opt.lib +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/SPIRV-Tools-reduce.lib +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/SPIRV-Tools.lib +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/glfw3.lib +0 -0
- {gstaichi-2.1.1rc2.dist-info → gstaichi-2.2.0.dist-info}/METADATA +1 -1
- {gstaichi-2.1.1rc2.dist-info → gstaichi-2.2.0.dist-info}/RECORD +52 -52
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools/cmake/SPIRV-ToolsConfig.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools/cmake/SPIRV-ToolsTarget-release.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools/cmake/SPIRV-ToolsTarget.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-diff/cmake/SPIRV-Tools-diffConfig.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-diff/cmake/SPIRV-Tools-diffTargets-release.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-diff/cmake/SPIRV-Tools-diffTargets.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-link/cmake/SPIRV-Tools-linkConfig.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-link/cmake/SPIRV-Tools-linkTargets-release.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-link/cmake/SPIRV-Tools-linkTargets.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-lint/cmake/SPIRV-Tools-lintConfig.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-lint/cmake/SPIRV-Tools-lintTargets-release.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-lint/cmake/SPIRV-Tools-lintTargets.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-opt/cmake/SPIRV-Tools-optConfig.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-opt/cmake/SPIRV-Tools-optTargets-release.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-opt/cmake/SPIRV-Tools-optTargets.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-reduce/cmake/SPIRV-Tools-reduceConfig.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-reduce/cmake/SPIRV-Tools-reduceTarget-release.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools-reduce/cmake/SPIRV-Tools-reduceTarget.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/include/GLFW/glfw3.h +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/include/GLFW/glfw3native.h +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/include/spirv-tools/instrument.hpp +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/include/spirv-tools/libspirv.h +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/include/spirv-tools/libspirv.hpp +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/include/spirv-tools/linker.hpp +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/include/spirv-tools/optimizer.hpp +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/SPIRV-Tools-shared.lib +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/cmake/glfw3/glfw3Config.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/cmake/glfw3/glfw3ConfigVersion.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/cmake/glfw3/glfw3Targets-release.cmake +0 -0
- {gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/cmake/glfw3/glfw3Targets.cmake +0 -0
- {gstaichi-2.1.1rc2.dist-info → gstaichi-2.2.0.dist-info}/WHEEL +0 -0
- {gstaichi-2.1.1rc2.dist-info → gstaichi-2.2.0.dist-info}/licenses/LICENSE +0 -0
- {gstaichi-2.1.1rc2.dist-info → gstaichi-2.2.0.dist-info}/top_level.txt +0 -0
gstaichi/CHANGELOG.md
CHANGED
Binary file
|
@@ -4,7 +4,7 @@ gstaichi_python
|
|
4
4
|
from __future__ import annotations
|
5
5
|
import numpy
|
6
6
|
import typing
|
7
|
-
__all__: list[str] = ['ADJOINT', 'ADJOINT_CHECKBIT', 'AOS', 'ASTBuilder', 'Arch', 'AutodiffMode', 'Axis', 'Benchmark', 'BinaryOpType', 'BitStructType', 'BitStructTypeBuilder', 'BoundaryMode', 'CC', 'CE', 'CF', 'CGd', 'CGf', 'CLAMP', 'CUCG', 'CV', 'Cell', 'CompileConfig', 'CompiledKernelData', 'Config', 'ConvType', 'CuSparseMatrix', 'CuSparseSolver', 'DUAL', 'DataTypeCxx', 'DataType_f16', 'DataType_f32', 'DataType_f64', 'DataType_gen', 'DataType_i16', 'DataType_i32', 'DataType_i64', 'DataType_i8', 'DataType_u1', 'DataType_u16', 'DataType_u32', 'DataType_u64', 'DataType_u8', 'DataType_unknown', 'DebugInfo', 'DeviceAllocation', 'DeviceCapabilityConfig', 'EC', 'EE', 'EF', 'EV', 'Edge', 'EigenSparseSolverfloat32LDLTAMD', 'EigenSparseSolverfloat32LDLTCOLAMD', 'EigenSparseSolverfloat32LLTAMD', 'EigenSparseSolverfloat32LLTCOLAMD', 'EigenSparseSolverfloat32LUAMD', 'EigenSparseSolverfloat32LUCOLAMD', 'EigenSparseSolverfloat64LDLTAMD', 'EigenSparseSolverfloat64LDLTCOLAMD', 'EigenSparseSolverfloat64LLTAMD', 'EigenSparseSolverfloat64LLTCOLAMD', 'EigenSparseSolverfloat64LUAMD', 'EigenSparseSolverfloat64LUCOLAMD', 'ExprCxx', 'ExprGroup', 'Extension', 'FC', 'FE', 'FF', 'FORWARD', 'FV', 'Face', 'Format', 'Function', 'FunctionKey', 'GsTaichiAssertionError', 'GsTaichiIndexError', 'GsTaichiRuntimeError', 'GsTaichiSyntaxError', 'GsTaichiTypeError', 'HackedSignalRegister', 'InternalOp', 'KernelCxx', 'KernelLaunchContext', 'KernelProfileTracedRecord', 'KernelProfilerQueryResult', 'Layout', 'Mesh', 'MeshElementType', 'MeshPtr', 'MeshRelationType', 'MeshTopology', 'NONE', 'NULL', 'NdarrayCxx', 'Operation', 'PRIMAL', 'Program', 'REVERSE', 'SNodeAccessFlag', 'SNodeCxx', 'SNodeGradType', 'SNodeRegistry', 'SNodeTreeCxx', 'SNodeType', 'SOA', 'SparseMatrix', 'SparseMatrixBuilder', 'SparseSolver', 'Stmt', 'Task', 'Tetrahedron', 'TextureCxx', 'TextureOpType', 'Triangle', 'Type', 'TypeFactory', 'UNSAFE', 'UnaryOpType', 'VALIDATION', 'VC', 'VE', 'VF', 'VV', 'Vector2d', 'Vector2f', 'Vector2i', 'Vector3d', 'Vector3f', 'Vector3i', 'Vector4d', 'Vector4f', 'Vector4i', 'Vertex', 'abs', 'acos', 'add', 'adstack', 'amdgpu', 'arch_from_name', 'arch_name', 'arch_uses_llvm', 'arm64', 'asin', 'assertion', 'atan2', 'bit_and', 'bit_not', 'bit_or', 'bit_sar', 'bit_shl', 'bit_shr', 'bit_struct', 'bit_xor', 'bitmasked', 'bits_cast', 'block_local', 'bls', 'cast_bits', 'cast_value', 'ceil', 'clear_profile_info', 'clz', 'cmp_eq', 'cmp_ge', 'cmp_gt', 'cmp_le', 'cmp_lt', 'cmp_ne', 'cos', 'create_benchmark', 'create_initialized_benchmark', 'create_initialized_task', 'create_mesh', 'create_task', 'critical', 'cuda', 'cuda_version', 'dColMajor_EigenSparseMatrix', 'dRowMajor_EigenSparseMatrix', 'data64', 'data_type_name', 'data_type_size', 'debug', 'default_compile_config', 'dense', 'div', 'dynamic', 'element_order', 'element_type_name', 'error', 'exp', 'expr_abs', 'expr_acos', 'expr_add', 'expr_asin', 'expr_assume_in_range', 'expr_atan2', 'expr_atomic_add', 'expr_atomic_bit_and', 'expr_atomic_bit_or', 'expr_atomic_bit_xor', 'expr_atomic_max', 'expr_atomic_min', 'expr_atomic_mul', 'expr_atomic_sub', 'expr_bit_and', 'expr_bit_not', 'expr_bit_or', 'expr_bit_sar', 'expr_bit_shl', 'expr_bit_shr', 'expr_bit_xor', 'expr_ceil', 'expr_clz', 'expr_cmp_eq', 'expr_cmp_ge', 'expr_cmp_gt', 'expr_cmp_le', 'expr_cmp_lt', 'expr_cmp_ne', 'expr_cos', 'expr_div', 'expr_exp', 'expr_field', 'expr_floor', 'expr_floordiv', 'expr_frexp', 'expr_ifte', 'expr_inv', 'expr_log', 'expr_logic_not', 'expr_logical_and', 'expr_logical_or', 'expr_loop_unique', 'expr_matrix_field', 'expr_max', 'expr_min', 'expr_mod', 'expr_mul', 'expr_neg', 'expr_popcnt', 'expr_pow', 'expr_rcp', 'expr_round', 'expr_rsqrt', 'expr_select', 'expr_sin', 'expr_sqrt', 'expr_sub', 'expr_tan', 'expr_tanh', 'expr_truediv', 'extfunc', 'fColMajor_EigenSparseMatrix', 'fRowMajor_EigenSparseMatrix', 'finalize_snode_tree', 'floor', 'floordiv', 'flush_log', 'frexp', 'from_end_element_order', 'g2r', 'get_commit_hash', 'get_default_float_size', 'get_external_tensor_dim', 'get_external_tensor_element_dim', 'get_external_tensor_element_shape', 'get_external_tensor_element_type', 'get_external_tensor_needs_grad', 'get_external_tensor_real_func_args', 'get_external_tensor_shape_along_axis', 'get_llvm_target_support', 'get_max_num_indices', 'get_num_elements', 'get_python_package_dir', 'get_relation_access', 'get_relation_size', 'get_repo_dir', 'get_type_factory_instance', 'get_version_major', 'get_version_minor', 'get_version_patch', 'get_version_string', 'hash', 'host_arch', 'info', 'insert_internal_func_call', 'inv', 'inverse_relation', 'is_extension_supported', 'is_integral', 'is_quant', 'is_real', 'is_signed', 'is_tensor', 'is_unsigned', 'js', 'kFetchTexel', 'kLoad', 'kSampleLod', 'kStore', 'kUndefined', 'l2g', 'l2r', 'libdevice_path', 'log', 'logging_effective', 'logic_not', 'make_arg_load_expr', 'make_binary_op_expr', 'make_const_expr_bool', 'make_const_expr_fp', 'make_const_expr_int', 'make_cucg_solver', 'make_cusparse_solver', 'make_double_cg_solver', 'make_external_tensor_expr', 'make_external_tensor_grad_expr', 'make_float_cg_solver', 'make_frontend_assign_stmt', 'make_get_element_expr', 'make_global_load_stmt', 'make_global_store_stmt', 'make_rand_expr', 'make_reference', 'make_rw_texture_ptr_expr', 'make_sparse_solver', 'make_texture_ptr_expr', 'make_unary_op_expr', 'max', 'mesh', 'mesh_local', 'metal', 'min', 'mod', 'mul', 'neg', 'opencl', 'place', 'pointer', 'pop_python_print_buffer', 'popcnt', 'pow', 'print_all_units', 'print_profile_info', 'promoted_type', 'quant', 'quant_array', 'quant_basic', 'query_int64', 'rcp', 'read_only', 'relation_by_orders', 'reset_default_compile_config', 'root', 'round', 'rsqrt', 'set_core_state_python_imported', 'set_core_trigger_gdb_when_crash', 'set_index_mapping', 'set_lib_dir', 'set_logging_level', 'set_logging_level_default', 'set_num_elements', 'set_num_patches', 'set_owned_offset', 'set_patch_max_element_num', 'set_python_package_dir', 'set_relation_dynamic', 'set_relation_fixed', 'set_tmp_dir', 'set_total_offset', 'set_vulkan_visible_device', 'sgn', 'sin', 'sparse', 'sqrt', 'start_memory_monitoring', 'sub', 'subscript_with_multiple_indices', 'tan', 'tanh', 'test_cpp_exception', 'test_logging', 'test_printf', 'test_raise_error', 'test_threading', 'test_throw', 'to_end_element_order', 'toggle_python_print_buffer', 'trace', 'trigger_crash', 'trigger_sig_fpe', 'truediv', 'undefined', 'value_cast', 'vulkan', 'wait_for_debugger', 'warn', 'with_amdgpu', 'with_cuda', 'with_metal', 'with_vulkan', 'x64']
|
7
|
+
__all__: list[str] = ['ADJOINT', 'ADJOINT_CHECKBIT', 'AOS', 'ASTBuilder', 'Arch', 'AutodiffMode', 'Axis', 'Benchmark', 'BinaryOpType', 'BitStructType', 'BitStructTypeBuilder', 'BoundaryMode', 'CC', 'CE', 'CF', 'CGd', 'CGf', 'CLAMP', 'CUCG', 'CV', 'Cell', 'CompileConfig', 'CompileResult', 'CompiledKernelData', 'Config', 'ConvType', 'CuSparseMatrix', 'CuSparseSolver', 'DUAL', 'DataTypeCxx', 'DataType_f16', 'DataType_f32', 'DataType_f64', 'DataType_gen', 'DataType_i16', 'DataType_i32', 'DataType_i64', 'DataType_i8', 'DataType_u1', 'DataType_u16', 'DataType_u32', 'DataType_u64', 'DataType_u8', 'DataType_unknown', 'DebugInfo', 'DeviceAllocation', 'DeviceCapabilityConfig', 'EC', 'EE', 'EF', 'EV', 'Edge', 'EigenSparseSolverfloat32LDLTAMD', 'EigenSparseSolverfloat32LDLTCOLAMD', 'EigenSparseSolverfloat32LLTAMD', 'EigenSparseSolverfloat32LLTCOLAMD', 'EigenSparseSolverfloat32LUAMD', 'EigenSparseSolverfloat32LUCOLAMD', 'EigenSparseSolverfloat64LDLTAMD', 'EigenSparseSolverfloat64LDLTCOLAMD', 'EigenSparseSolverfloat64LLTAMD', 'EigenSparseSolverfloat64LLTCOLAMD', 'EigenSparseSolverfloat64LUAMD', 'EigenSparseSolverfloat64LUCOLAMD', 'ExprCxx', 'ExprGroup', 'Extension', 'FC', 'FE', 'FF', 'FORWARD', 'FV', 'Face', 'Format', 'Function', 'FunctionKey', 'GsTaichiAssertionError', 'GsTaichiIndexError', 'GsTaichiRuntimeError', 'GsTaichiSyntaxError', 'GsTaichiTypeError', 'HackedSignalRegister', 'InternalOp', 'KernelCxx', 'KernelLaunchContext', 'KernelProfileTracedRecord', 'KernelProfilerQueryResult', 'Layout', 'Mesh', 'MeshElementType', 'MeshPtr', 'MeshRelationType', 'MeshTopology', 'NONE', 'NULL', 'NdarrayCxx', 'Operation', 'PRIMAL', 'Program', 'REVERSE', 'SNodeAccessFlag', 'SNodeCxx', 'SNodeGradType', 'SNodeRegistry', 'SNodeTreeCxx', 'SNodeType', 'SOA', 'SparseMatrix', 'SparseMatrixBuilder', 'SparseSolver', 'Stmt', 'Task', 'Tetrahedron', 'TextureCxx', 'TextureOpType', 'Triangle', 'Type', 'TypeFactory', 'UNSAFE', 'UnaryOpType', 'VALIDATION', 'VC', 'VE', 'VF', 'VV', 'Vector2d', 'Vector2f', 'Vector2i', 'Vector3d', 'Vector3f', 'Vector3i', 'Vector4d', 'Vector4f', 'Vector4i', 'Vertex', 'abs', 'acos', 'add', 'adstack', 'amdgpu', 'arch_from_name', 'arch_name', 'arch_uses_llvm', 'arm64', 'asin', 'assertion', 'atan2', 'bit_and', 'bit_not', 'bit_or', 'bit_sar', 'bit_shl', 'bit_shr', 'bit_struct', 'bit_xor', 'bitmasked', 'bits_cast', 'block_local', 'bls', 'cast_bits', 'cast_value', 'ceil', 'clear_profile_info', 'clz', 'cmp_eq', 'cmp_ge', 'cmp_gt', 'cmp_le', 'cmp_lt', 'cmp_ne', 'cos', 'create_benchmark', 'create_initialized_benchmark', 'create_initialized_task', 'create_mesh', 'create_task', 'critical', 'cuda', 'cuda_version', 'dColMajor_EigenSparseMatrix', 'dRowMajor_EigenSparseMatrix', 'data64', 'data_type_name', 'data_type_size', 'debug', 'default_compile_config', 'dense', 'div', 'dynamic', 'element_order', 'element_type_name', 'error', 'exp', 'expr_abs', 'expr_acos', 'expr_add', 'expr_asin', 'expr_assume_in_range', 'expr_atan2', 'expr_atomic_add', 'expr_atomic_bit_and', 'expr_atomic_bit_or', 'expr_atomic_bit_xor', 'expr_atomic_max', 'expr_atomic_min', 'expr_atomic_mul', 'expr_atomic_sub', 'expr_bit_and', 'expr_bit_not', 'expr_bit_or', 'expr_bit_sar', 'expr_bit_shl', 'expr_bit_shr', 'expr_bit_xor', 'expr_ceil', 'expr_clz', 'expr_cmp_eq', 'expr_cmp_ge', 'expr_cmp_gt', 'expr_cmp_le', 'expr_cmp_lt', 'expr_cmp_ne', 'expr_cos', 'expr_div', 'expr_exp', 'expr_field', 'expr_floor', 'expr_floordiv', 'expr_frexp', 'expr_ifte', 'expr_inv', 'expr_log', 'expr_logic_not', 'expr_logical_and', 'expr_logical_or', 'expr_loop_unique', 'expr_matrix_field', 'expr_max', 'expr_min', 'expr_mod', 'expr_mul', 'expr_neg', 'expr_popcnt', 'expr_pow', 'expr_rcp', 'expr_round', 'expr_rsqrt', 'expr_select', 'expr_sin', 'expr_sqrt', 'expr_sub', 'expr_tan', 'expr_tanh', 'expr_truediv', 'extfunc', 'fColMajor_EigenSparseMatrix', 'fRowMajor_EigenSparseMatrix', 'finalize_snode_tree', 'floor', 'floordiv', 'flush_log', 'frexp', 'from_end_element_order', 'g2r', 'get_commit_hash', 'get_default_float_size', 'get_external_tensor_dim', 'get_external_tensor_element_dim', 'get_external_tensor_element_shape', 'get_external_tensor_element_type', 'get_external_tensor_needs_grad', 'get_external_tensor_real_func_args', 'get_external_tensor_shape_along_axis', 'get_llvm_target_support', 'get_max_num_indices', 'get_num_elements', 'get_python_package_dir', 'get_relation_access', 'get_relation_size', 'get_repo_dir', 'get_type_factory_instance', 'get_version_major', 'get_version_minor', 'get_version_patch', 'get_version_string', 'hash', 'host_arch', 'info', 'insert_internal_func_call', 'inv', 'inverse_relation', 'is_extension_supported', 'is_integral', 'is_quant', 'is_real', 'is_signed', 'is_tensor', 'is_unsigned', 'js', 'kFetchTexel', 'kLoad', 'kSampleLod', 'kStore', 'kUndefined', 'l2g', 'l2r', 'libdevice_path', 'log', 'logging_effective', 'logic_not', 'make_arg_load_expr', 'make_binary_op_expr', 'make_const_expr_bool', 'make_const_expr_fp', 'make_const_expr_int', 'make_cucg_solver', 'make_cusparse_solver', 'make_double_cg_solver', 'make_external_tensor_expr', 'make_external_tensor_grad_expr', 'make_float_cg_solver', 'make_frontend_assign_stmt', 'make_get_element_expr', 'make_global_load_stmt', 'make_global_store_stmt', 'make_rand_expr', 'make_reference', 'make_rw_texture_ptr_expr', 'make_sparse_solver', 'make_texture_ptr_expr', 'make_unary_op_expr', 'max', 'mesh', 'mesh_local', 'metal', 'min', 'mod', 'mul', 'neg', 'opencl', 'place', 'pointer', 'pop_python_print_buffer', 'popcnt', 'pow', 'print_all_units', 'print_profile_info', 'promoted_type', 'quant', 'quant_array', 'quant_basic', 'query_int64', 'rcp', 'read_only', 'relation_by_orders', 'reset_default_compile_config', 'root', 'round', 'rsqrt', 'set_core_state_python_imported', 'set_core_trigger_gdb_when_crash', 'set_index_mapping', 'set_lib_dir', 'set_logging_level', 'set_logging_level_default', 'set_num_elements', 'set_num_patches', 'set_owned_offset', 'set_patch_max_element_num', 'set_python_package_dir', 'set_relation_dynamic', 'set_relation_fixed', 'set_tmp_dir', 'set_total_offset', 'set_vulkan_visible_device', 'sgn', 'sin', 'sparse', 'sqrt', 'start_memory_monitoring', 'sub', 'subscript_with_multiple_indices', 'tan', 'tanh', 'test_cpp_exception', 'test_logging', 'test_printf', 'test_raise_error', 'test_threading', 'test_throw', 'to_end_element_order', 'toggle_python_print_buffer', 'trace', 'trigger_crash', 'trigger_sig_fpe', 'truediv', 'undefined', 'value_cast', 'vulkan', 'wait_for_debugger', 'warn', 'with_amdgpu', 'with_cuda', 'with_metal', 'with_vulkan', 'x64']
|
8
8
|
class ASTBuilder:
|
9
9
|
def begin_frontend_if(self, arg0: ..., arg1: DebugInfo) -> None:
|
10
10
|
...
|
@@ -504,6 +504,13 @@ class CompileConfig:
|
|
504
504
|
vk_api_version: str
|
505
505
|
def __init__(self) -> None:
|
506
506
|
...
|
507
|
+
class CompileResult:
|
508
|
+
@property
|
509
|
+
def cache_hit(self) -> bool:
|
510
|
+
...
|
511
|
+
@property
|
512
|
+
def compiled_kernel_data(self) -> CompiledKernelData:
|
513
|
+
...
|
507
514
|
class CompiledKernelData:
|
508
515
|
pass
|
509
516
|
class Config:
|
@@ -1528,7 +1535,7 @@ class Program:
|
|
1528
1535
|
...
|
1529
1536
|
def clear_kernel_profiler(self) -> None:
|
1530
1537
|
...
|
1531
|
-
def compile_kernel(self, arg0: CompileConfig, arg1: DeviceCapabilityConfig, arg2: ...) ->
|
1538
|
+
def compile_kernel(self, arg0: CompileConfig, arg1: DeviceCapabilityConfig, arg2: ...) -> ...:
|
1532
1539
|
...
|
1533
1540
|
def config(self) -> CompileConfig:
|
1534
1541
|
...
|
gstaichi/_version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = '2.
|
1
|
+
__version__ = '2.2.0'
|
@@ -6,6 +6,8 @@ from typing import Any, Sequence
|
|
6
6
|
|
7
7
|
import numpy as np
|
8
8
|
|
9
|
+
from gstaichi import _logging
|
10
|
+
|
9
11
|
from .._ndarray import ScalarNdarray
|
10
12
|
from ..field import ScalarField
|
11
13
|
from ..matrix import MatrixField, MatrixNdarray, VectorNdarray
|
@@ -34,7 +36,7 @@ def dataclass_to_repr(path: tuple[str, ...], arg: Any) -> str:
|
|
34
36
|
return "[" + ",".join(repr_l) + "]"
|
35
37
|
|
36
38
|
|
37
|
-
def stringify_obj_type(path: tuple[str, ...], obj:
|
39
|
+
def stringify_obj_type(path: tuple[str, ...], obj: object) -> str | None:
|
38
40
|
"""
|
39
41
|
Convert an object into a string representation that only depends on its type.
|
40
42
|
|
@@ -42,25 +44,29 @@ def stringify_obj_type(path: tuple[str, ...], obj: Any) -> str | None:
|
|
42
44
|
to be the actual python type string, just a string that is representative of the type, and won't collide
|
43
45
|
with different (allowed) types.
|
44
46
|
|
45
|
-
|
47
|
+
Note that fields are not included in fast cache.
|
46
48
|
"""
|
47
|
-
# TODO: We should have a way of printing this without having to hack the code really. Using logger perhaps?
|
48
|
-
# (I have another PR that addreses this https://github.com/Genesis-Embodied-AI/gstaichi/pull/144/files)
|
49
49
|
arg_type = type(obj)
|
50
50
|
if isinstance(obj, ScalarNdarray):
|
51
51
|
return f"[nd-{obj.dtype}-{len(obj.shape)}]"
|
52
52
|
if isinstance(obj, VectorNdarray):
|
53
53
|
return f"[ndv-{obj.n}-{obj.dtype}-{len(obj.shape)}]"
|
54
54
|
if isinstance(obj, ScalarField):
|
55
|
-
|
55
|
+
# disabled for now, because we need to think about how to handle field offset
|
56
|
+
# etc
|
57
|
+
# TODO: think about whether there is a way to include fields
|
58
|
+
return None
|
56
59
|
if isinstance(obj, MatrixNdarray):
|
57
60
|
return f"[ndm-{obj.m}-{obj.n}-{obj.dtype}-{len(obj.shape)}]"
|
58
61
|
if "torch.Tensor" in str(arg_type):
|
59
|
-
return f"[pt-{obj.dtype}-{obj.ndim}]"
|
62
|
+
return f"[pt-{obj.dtype}-{obj.ndim}]" # type: ignore
|
60
63
|
if isinstance(obj, np.ndarray):
|
61
64
|
return f"[np-{obj.dtype}-{obj.ndim}]"
|
62
65
|
if isinstance(obj, MatrixField):
|
63
|
-
|
66
|
+
# disabled for now, because we need to think about how to handle field offset
|
67
|
+
# etc
|
68
|
+
# TODO: think about whether there is a way to include fields
|
69
|
+
return None
|
64
70
|
if dataclasses.is_dataclass(obj):
|
65
71
|
return dataclass_to_repr(path, obj)
|
66
72
|
if is_data_oriented(obj):
|
@@ -79,6 +85,12 @@ def stringify_obj_type(path: tuple[str, ...], obj: Any) -> str | None:
|
|
79
85
|
return "np.bool_"
|
80
86
|
if isinstance(obj, enum.Enum):
|
81
87
|
return f"enum-{obj.name}-{obj.value}"
|
88
|
+
# The bit in caps should not be modified without updating corresponding test
|
89
|
+
# The rest of free text can be freely modified
|
90
|
+
# (will probably formalize this in more general doc / contributor guidelines at some point)
|
91
|
+
_logging.warn(
|
92
|
+
f"[FASTCACHE][PARAM_INVALID] Parameter with path {path} and type {arg_type} not allowed by fast cache."
|
93
|
+
)
|
82
94
|
return None
|
83
95
|
|
84
96
|
|
@@ -2,6 +2,8 @@ from typing import Any, Iterable, Sequence
|
|
2
2
|
|
3
3
|
from pydantic import BaseModel
|
4
4
|
|
5
|
+
from gstaichi import _logging
|
6
|
+
|
5
7
|
from .._wrap_inspect import FunctionSourceInfo
|
6
8
|
from . import args_hasher, config_hasher, function_hasher
|
7
9
|
from .fast_caching_types import HashedFunctionSourceInfo
|
@@ -19,6 +21,12 @@ def create_cache_key(kernel_source_info: FunctionSourceInfo, args: Sequence[Any]
|
|
19
21
|
"""
|
20
22
|
args_hash = args_hasher.hash_args(args)
|
21
23
|
if args_hash is None:
|
24
|
+
# the bit in caps at start should not be modified without modifying corresponding text
|
25
|
+
# freetext bit can be freely modified
|
26
|
+
_logging.warn(
|
27
|
+
f"[FASTCACHE][INVALID_FUNC] The pure function {kernel_source_info.function_name} could not be "
|
28
|
+
"fast cached, because one or more parameter types were invalid"
|
29
|
+
)
|
22
30
|
return None
|
23
31
|
kernel_hash = function_hasher.hash_kernel(kernel_source_info)
|
24
32
|
config_hash = config_hasher.hash_compile_config()
|
gstaichi/lang/impl.py
CHANGED
@@ -349,6 +349,10 @@ class PyGsTaichi:
|
|
349
349
|
self.kernels: list[Kernel] = kernels or []
|
350
350
|
self._signal_handler_registry = None
|
351
351
|
self.unfinalized_fields_builder = {}
|
352
|
+
self.print_non_pure: bool = False
|
353
|
+
self.short_circuit_operators: bool = False
|
354
|
+
self.unrolling_limit: int = 0
|
355
|
+
self.src_ll_cache: bool = True
|
352
356
|
|
353
357
|
@property
|
354
358
|
def compiling_callable(self) -> KernelCxx | Kernel | Function:
|
gstaichi/lang/kernel_impl.py
CHANGED
@@ -26,6 +26,7 @@ from gstaichi._lib import core as _ti_core
|
|
26
26
|
from gstaichi._lib.core.gstaichi_python import (
|
27
27
|
ASTBuilder,
|
28
28
|
CompiledKernelData,
|
29
|
+
CompileResult,
|
29
30
|
FunctionKey,
|
30
31
|
KernelCxx,
|
31
32
|
KernelLaunchContext,
|
@@ -573,6 +574,11 @@ class SrcLlCacheObservations:
|
|
573
574
|
cache_stored: bool = False
|
574
575
|
|
575
576
|
|
577
|
+
@dataclasses.dataclass
|
578
|
+
class FeLlCacheObservations:
|
579
|
+
cache_hit: bool = False
|
580
|
+
|
581
|
+
|
576
582
|
class Kernel:
|
577
583
|
counter = 0
|
578
584
|
|
@@ -611,6 +617,7 @@ class Kernel:
|
|
611
617
|
self.compiled_kernel_data_by_key: dict[CompiledKernelKeyType, CompiledKernelData] = {}
|
612
618
|
|
613
619
|
self.src_ll_cache_observations: SrcLlCacheObservations = SrcLlCacheObservations()
|
620
|
+
self.fe_ll_cache_observations: FeLlCacheObservations = FeLlCacheObservations()
|
614
621
|
|
615
622
|
def ast_builder(self) -> ASTBuilder:
|
616
623
|
assert self.kernel_cpp is not None
|
@@ -697,7 +704,7 @@ class Kernel:
|
|
697
704
|
if key in self.materialized_kernels:
|
698
705
|
return
|
699
706
|
|
700
|
-
if self.gstaichi_callable and self.gstaichi_callable.is_pure:
|
707
|
+
if self.runtime.src_ll_cache and self.gstaichi_callable and self.gstaichi_callable.is_pure:
|
701
708
|
kernel_source_info, _src = get_source_info_and_src(self.func)
|
702
709
|
self.fast_checksum = src_hasher.create_cache_key(kernel_source_info, args)
|
703
710
|
if self.fast_checksum:
|
@@ -713,6 +720,13 @@ class Kernel:
|
|
713
720
|
)
|
714
721
|
if self.compiled_kernel_data_by_key[key]:
|
715
722
|
self.src_ll_cache_observations.cache_loaded = True
|
723
|
+
elif self.gstaichi_callable and not self.gstaichi_callable.is_pure and self.runtime.print_non_pure:
|
724
|
+
# The bit in caps should not be modified without updating corresponding test
|
725
|
+
# freetext can be freely modified.
|
726
|
+
# As for why we are using `print` rather than eg logger.info, it is because
|
727
|
+
# this is only printed when ti.init(print_non_pure=..) is True. And it is
|
728
|
+
# confusing to set that to True, and see nothing printed.
|
729
|
+
print(f"[NOT_PURE] Debug information: not pure: {self.func.__name__}")
|
716
730
|
|
717
731
|
kernel_name = f"{self.func.__name__}_c{self.kernel_counter}_{key[1]}"
|
718
732
|
_logging.trace(f"Materializing kernel {kernel_name} in {self.autodiff_mode}...")
|
@@ -1043,7 +1057,10 @@ class Kernel:
|
|
1043
1057
|
try:
|
1044
1058
|
prog = impl.get_runtime().prog
|
1045
1059
|
if not compiled_kernel_data:
|
1046
|
-
|
1060
|
+
compile_result: CompileResult = prog.compile_kernel(prog.config(), prog.get_device_caps(), t_kernel)
|
1061
|
+
compiled_kernel_data = compile_result.compiled_kernel_data
|
1062
|
+
if compile_result.cache_hit:
|
1063
|
+
self.fe_ll_cache_observations.cache_hit = True
|
1047
1064
|
if self.fast_checksum:
|
1048
1065
|
src_hasher.store(self.fast_checksum, self.visited_functions)
|
1049
1066
|
prog.store_fast_cache(
|
gstaichi/lang/misc.py
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
# type: ignore
|
2
|
-
|
3
1
|
import atexit
|
4
2
|
import os
|
5
3
|
import shutil
|
@@ -198,8 +196,6 @@ def reset():
|
|
198
196
|
# will raise error because a is unavailable after reset.
|
199
197
|
"""
|
200
198
|
impl.reset()
|
201
|
-
global runtime
|
202
|
-
runtime = impl.get_runtime()
|
203
199
|
|
204
200
|
|
205
201
|
class _EnvironmentConfigurator:
|
@@ -304,9 +300,11 @@ def init(
|
|
304
300
|
arch=None,
|
305
301
|
default_fp=None,
|
306
302
|
default_ip=None,
|
307
|
-
_test_mode=False,
|
308
|
-
enable_fallback=True,
|
309
|
-
require_version=None,
|
303
|
+
_test_mode: bool = False,
|
304
|
+
enable_fallback: bool = True,
|
305
|
+
require_version: str | None = None,
|
306
|
+
print_non_pure: bool = False,
|
307
|
+
src_ll_cache: bool = True,
|
310
308
|
**kwargs,
|
311
309
|
):
|
312
310
|
"""Initializes the GsTaichi runtime.
|
@@ -318,7 +316,11 @@ def init(
|
|
318
316
|
arch: Backend to use. This is usually :const:`~gstaichi.lang.cpu` or :const:`~gstaichi.lang.gpu`.
|
319
317
|
default_fp (Optional[type]): Default floating-point type.
|
320
318
|
default_ip (Optional[type]): Default integral type.
|
321
|
-
require_version
|
319
|
+
require_version: A version string.
|
320
|
+
print_non_pure: Print the names of kernels, at the time they are executed, which are not annotated with
|
321
|
+
@ti.pure
|
322
|
+
src_ll_cache: enable SRC-LL-CACHE, which will accelerate loading from cache, across all architectures,
|
323
|
+
for pure kernels (i.e. kernels declared as @ti.pure)
|
322
324
|
**kwargs: GsTaichi provides highly customizable compilation through
|
323
325
|
``kwargs``, which allows for fine grained control of GsTaichi compiler
|
324
326
|
behavior. Below we list some of the most frequently used ones. For a
|
@@ -414,11 +416,14 @@ def init(
|
|
414
416
|
raise KeyError(f'Unrecognized keyword argument(s) for ti.init: {", ".join(unexpected_keys)}')
|
415
417
|
|
416
418
|
# dispatch configurations that are not in ti.cfg:
|
419
|
+
runtime = impl.get_runtime()
|
417
420
|
if not _test_mode:
|
418
421
|
_ti_core.set_core_trigger_gdb_when_crash(spec_cfg.gdb_trigger)
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
+
runtime.short_circuit_operators = spec_cfg.short_circuit_operators
|
423
|
+
runtime.print_full_traceback = spec_cfg.print_full_traceback
|
424
|
+
runtime.unrolling_limit = spec_cfg.unrolling_limit
|
425
|
+
runtime.src_ll_cache = src_ll_cache
|
426
|
+
runtime.print_non_pure = print_non_pure
|
422
427
|
_logging.set_logging_level(spec_cfg.log_level.lower())
|
423
428
|
|
424
429
|
# select arch (backend):
|
@@ -452,9 +457,10 @@ def init(
|
|
452
457
|
|
453
458
|
def no_activate(*args):
|
454
459
|
"""Deactivates a SNode pointer."""
|
455
|
-
|
460
|
+
compiling_callable = get_runtime().compiling_callable
|
461
|
+
assert isinstance(compiling_callable, _ti_core.KernelCxx)
|
456
462
|
for v in args:
|
457
|
-
|
463
|
+
compiling_callable.no_activate(v._snode.ptr)
|
458
464
|
|
459
465
|
|
460
466
|
def block_local(*args):
|
@@ -553,7 +559,7 @@ def loop_unique(val, covers=None):
|
|
553
559
|
covers = []
|
554
560
|
if not isinstance(covers, (list, tuple)):
|
555
561
|
covers = [covers]
|
556
|
-
covers = [x.snode.ptr if isinstance(x, Expr) else x.ptr for x in covers]
|
562
|
+
covers = [x.snode.ptr if isinstance(x, Expr) else x.ptr for x in covers] # type: ignore
|
557
563
|
return _ti_core.expr_loop_unique(
|
558
564
|
Expr(val).ptr, covers, _ti_core.DebugInfo(impl.get_runtime().get_current_src_info())
|
559
565
|
)
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -1,16 +1,16 @@
|
|
1
|
-
gstaichi/CHANGELOG.md,sha256=
|
1
|
+
gstaichi/CHANGELOG.md,sha256=EC1aChWVfcMoGd6jdEfgcSAHsltZxYEkXY4RC_ASe1k,136
|
2
2
|
gstaichi/__init__.py,sha256=JFvEDYJ8EcHhPdrWMYez9cogC3nE1DMxjPmanOs8eYI,1044
|
3
3
|
gstaichi/_funcs.py,sha256=u0o3F7Yq6r2dxkimThby4rvceRjUGajaLyzkPtwMJgM,23943
|
4
4
|
gstaichi/_kernels.py,sha256=3R9_Ht0q1BSku-Jslvf5eYQY2bD8vFS5ZvL-im_iLPs,14664
|
5
5
|
gstaichi/_logging.py,sha256=-4yqQ5rePskPzIbDdZSahAf4RYG_R7RNQDHau1wbcuc,3813
|
6
|
-
gstaichi/_version.py,sha256=
|
6
|
+
gstaichi/_version.py,sha256=equBsVA_0HkJTS7EPj74oCtCcOvyDFsRtw5IQ58tplA,23
|
7
7
|
gstaichi/_version_check.py,sha256=oifkwL4GmcOgh9OR7V4LtYt4dTGzokVUFxnVJspaOE0,3614
|
8
8
|
gstaichi/experimental.py,sha256=SwtoqhUcSxCSea-sT10G-GgZaTcSWUNPmTACK0MCHH4,359
|
9
9
|
gstaichi/_lib/__init__.py,sha256=rsFUVL8_2_eyK2Z4MiP6NvLIEykG1fsK8l1WZNQa3ko,74
|
10
10
|
gstaichi/_lib/utils.py,sha256=sEi0azEnb0jardg4pKMZfQAjoWgz6WOnwrdf2NSMOEA,7735
|
11
11
|
gstaichi/_lib/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
12
|
-
gstaichi/_lib/core/gstaichi_python.cp312-win_amd64.pyd,sha256=
|
13
|
-
gstaichi/_lib/core/gstaichi_python.pyi,sha256=
|
12
|
+
gstaichi/_lib/core/gstaichi_python.cp312-win_amd64.pyd,sha256=3ISvXCWZQNW_N_TqXbQI0zACYHosGq2MWCaxsJFjwXQ,80839168
|
13
|
+
gstaichi/_lib/core/gstaichi_python.pyi,sha256=9SrxKGGX2YeNvDNLuW-8yYlAq2vWB6h13yh2vA4yz0g,113525
|
14
14
|
gstaichi/_lib/core/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
15
15
|
gstaichi/_lib/runtime/runtime_cuda.bc,sha256=ZCHDx_T5HdLQ_u8oAETF6amiw3xdLHbgn8naellBfUw,155520
|
16
16
|
gstaichi/_lib/runtime/runtime_x64.bc,sha256=dmh_JFX-s9H6zD2DCT_JGqYcYy-vkylvsb_LqXRnIDY,140112
|
@@ -45,14 +45,14 @@ gstaichi/lang/common_ops.py,sha256=bIGmalXVnxVc5mw-k704zFwr38bR9uZx_4ieNS3PYpQ,8
|
|
45
45
|
gstaichi/lang/exception.py,sha256=f-EWm56Px6TpskhCgEReqoY8meg_-4nZD9vFOA5TVic,2165
|
46
46
|
gstaichi/lang/expr.py,sha256=bSWJyNJ55Xnv7mADHxKRhwH0lB2cXnRi9EpCrHgElLY,6587
|
47
47
|
gstaichi/lang/field.py,sha256=pppo98T6DsHPhOR0-g-oc5lmEoR-mZeh96pMLkUyDQI,13677
|
48
|
-
gstaichi/lang/impl.py,sha256=
|
48
|
+
gstaichi/lang/impl.py,sha256=6URp6sVXpduqVqx_MblPIP0EDXdXaKjXxREam6FsAyA,42969
|
49
49
|
gstaichi/lang/kernel_arguments.py,sha256=ZUtk3AFs7xReYjoogTZ2xTMFaRZGAkFpOi1Et_lTGfY,6486
|
50
|
-
gstaichi/lang/kernel_impl.py,sha256=
|
50
|
+
gstaichi/lang/kernel_impl.py,sha256=_bpJ9auAPzRDXh2U_dVND1V5r7C0DvoyTBFQ7Q2Nk80,61635
|
51
51
|
gstaichi/lang/matrix.py,sha256=7bLpkkN_M9q9vHEY4ejpsGfQ99oTL8SFJiHzHIU7VBk,63762
|
52
52
|
gstaichi/lang/matrix_ops.py,sha256=v89ID3thZ8irSLU9Tyf1hmEdQTjGyMHWqvfzsvnFxGo,10399
|
53
53
|
gstaichi/lang/matrix_ops_utils.py,sha256=rrrC5KjmCt1w0ZNtLWqo5ZOjZNR74iqGjuVfHvqwwxg,5435
|
54
54
|
gstaichi/lang/mesh.py,sha256=ukqJYWSf3ANPoiV4Ue-DWMPZ0y21bGrhEUseVAIJK4w,27758
|
55
|
-
gstaichi/lang/misc.py,sha256=
|
55
|
+
gstaichi/lang/misc.py,sha256=HMWBdv5D0Car1vFbs2Z5JCR3n9DRo0AXMcLJr9m6vBU,24563
|
56
56
|
gstaichi/lang/ops.py,sha256=zKwfBLQrdnyyoHflIUe9DY3BQ2wQusfRrDLPRyAThpk,45919
|
57
57
|
gstaichi/lang/runtime_ops.py,sha256=TKlPOBMWGGg0jQZFlik4f5c1Do5cUlhEMk6r4VlOfvM,237
|
58
58
|
gstaichi/lang/shell.py,sha256=k9YPpByujyHis2Vv-oHSJowQAhhS1Iic9Oa7JKhy584,1095
|
@@ -61,13 +61,13 @@ gstaichi/lang/source_builder.py,sha256=ytBdJbFzcccD2ekVvy-v8YrllNEcSM1RRMUe-FWEN
|
|
61
61
|
gstaichi/lang/struct.py,sha256=xrSMsj2yg1Cu9hcFEWEzHPyjZ8b8pb6XzeVDj9hrf_o,30060
|
62
62
|
gstaichi/lang/util.py,sha256=VtBtYaJ-yGaXIS5lA2CV0dtdk8OZ9U55dy4MTZshOKk,7741
|
63
63
|
gstaichi/lang/_fast_caching/__init__.py,sha256=6k4yq6r4Lu1SI4IHt8ByDPhV8uGA8HHKCAcGqvCoUmE,97
|
64
|
-
gstaichi/lang/_fast_caching/args_hasher.py,sha256
|
64
|
+
gstaichi/lang/_fast_caching/args_hasher.py,sha256=-P6khr5xip81cKXLyCehgVMtgTa9iXk1tI8TzlcPTXo,4542
|
65
65
|
gstaichi/lang/_fast_caching/config_hasher.py,sha256=YtRFtJ8vA9sDgvzHBaMqLV8OG4voVjDTNeVDzPbHAzk,986
|
66
66
|
gstaichi/lang/_fast_caching/fast_caching_types.py,sha256=sjnqzi_8E1zTa6EMUTgJpCOoAaxVLviRS3tUsc5l-i0,661
|
67
67
|
gstaichi/lang/_fast_caching/function_hasher.py,sha256=Q53ReD1Lt694AR2-yuErSWP0WqIOQe4694IS2zXBhTY,1840
|
68
68
|
gstaichi/lang/_fast_caching/hash_utils.py,sha256=C42MfCBB5136-bYuvApgyw9QbGEOqJhe0l-ls8KgOUw,322
|
69
69
|
gstaichi/lang/_fast_caching/python_side_cache.py,sha256=-aJXpMGIAStU7zgSzFtNl0si8-9vEPYy7XCOtns_zUY,1847
|
70
|
-
gstaichi/lang/_fast_caching/src_hasher.py,sha256=
|
70
|
+
gstaichi/lang/_fast_caching/src_hasher.py,sha256=0dNHyRUB-XbSezAH_O-veyNJ9KyJJWY_lzYi8H7tCNc,3378
|
71
71
|
gstaichi/lang/ast/__init__.py,sha256=uPDw6vJparMHLQIaPM4zY5YfKZ7puJtiDd_z41qKYlk,216
|
72
72
|
gstaichi/lang/ast/ast_transformer.py,sha256=akF99PWeQpiMP2r2ny2OFWdqdmBS5X9DHybEoCTFk10,59746
|
73
73
|
gstaichi/lang/ast/ast_transformer_utils.py,sha256=uWfclQrAnTtvHO_-6y0Fbp810pGwFSUm2dJFf44Q1v0,12006
|
@@ -110,46 +110,46 @@ gstaichi/types/primitive_types.py,sha256=otvV6aBEtMANfjiPaDjl2oB6_7yOsrkgwDkMgg7
|
|
110
110
|
gstaichi/types/quant.py,sha256=orvn3oskYlhDd5Hln-Bt-oe0EXsPNjfOznMOCBEf1ak,3061
|
111
111
|
gstaichi/types/texture_type.py,sha256=wWhaDNwOQwdMSnxCzXsltr3bWLmreOC9DvEVUV0vIAI,2444
|
112
112
|
gstaichi/types/utils.py,sha256=8X1XmYXhPp-ANzwKRQhQmXV47DW9u-uWoc0fxMrWRDQ,276
|
113
|
-
gstaichi-2.
|
114
|
-
gstaichi-2.
|
115
|
-
gstaichi-2.
|
116
|
-
gstaichi-2.
|
117
|
-
gstaichi-2.
|
118
|
-
gstaichi-2.
|
119
|
-
gstaichi-2.
|
120
|
-
gstaichi-2.
|
121
|
-
gstaichi-2.
|
122
|
-
gstaichi-2.
|
123
|
-
gstaichi-2.
|
124
|
-
gstaichi-2.
|
125
|
-
gstaichi-2.
|
126
|
-
gstaichi-2.
|
127
|
-
gstaichi-2.
|
128
|
-
gstaichi-2.
|
129
|
-
gstaichi-2.
|
130
|
-
gstaichi-2.
|
131
|
-
gstaichi-2.
|
132
|
-
gstaichi-2.
|
133
|
-
gstaichi-2.
|
134
|
-
gstaichi-2.
|
135
|
-
gstaichi-2.
|
136
|
-
gstaichi-2.
|
137
|
-
gstaichi-2.
|
138
|
-
gstaichi-2.
|
139
|
-
gstaichi-2.
|
140
|
-
gstaichi-2.
|
141
|
-
gstaichi-2.
|
142
|
-
gstaichi-2.
|
143
|
-
gstaichi-2.
|
144
|
-
gstaichi-2.
|
145
|
-
gstaichi-2.
|
146
|
-
gstaichi-2.
|
147
|
-
gstaichi-2.
|
148
|
-
gstaichi-2.
|
149
|
-
gstaichi-2.
|
150
|
-
gstaichi-2.
|
151
|
-
gstaichi-2.
|
152
|
-
gstaichi-2.
|
153
|
-
gstaichi-2.
|
154
|
-
gstaichi-2.
|
155
|
-
gstaichi-2.
|
113
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools/cmake/SPIRV-ToolsConfig.cmake,sha256=jFprL3mwRRYJ0eh52yZqmUAWD9cA7xA7hhstBQU_scY,230
|
114
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools/cmake/SPIRV-ToolsTarget-release.cmake,sha256=X438aOEvZsAeo6Suk2LfStdal8R5m3UyfUPCg51DXGM,1477
|
115
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools/cmake/SPIRV-ToolsTarget.cmake,sha256=mriRCzvolwIXT55WDaD2ouu6AQvVHXQbRdJPmj0ZtSg,4468
|
116
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-diff/cmake/SPIRV-Tools-diffConfig.cmake,sha256=3S1hOLuDTsAwTH-F_Xn9iBdCjjOH6Kx3EjNhDXBVShw,280
|
117
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-diff/cmake/SPIRV-Tools-diffTargets-release.cmake,sha256=6fnDD1oaU-DEP4JIq75wotq4OSPW63pe5jEcTVwEtyo,890
|
118
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-diff/cmake/SPIRV-Tools-diffTargets.cmake,sha256=U1RmMclqSVR8vePS98vpT2RqItqnivv5tXbfM58i9V0,5068
|
119
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-link/cmake/SPIRV-Tools-linkConfig.cmake,sha256=HgRoCSWZQhGnNEs938xBFDSdxK6crL6VtbrQ9-DqcMY,280
|
120
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-link/cmake/SPIRV-Tools-linkTargets-release.cmake,sha256=cqDRYOLX02s-xo8EKyuGQwYX6uNa2Lxb363OP0tUB54,890
|
121
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-link/cmake/SPIRV-Tools-linkTargets.cmake,sha256=nlQJ33ZSrKM5w-xi7lYlopolM5lwcX4Yyqrytlbvj5c,5028
|
122
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-lint/cmake/SPIRV-Tools-lintConfig.cmake,sha256=E0o9wMS7mOV58CacqGpW5EOyG70WrdBKexx1AFlCyiQ,280
|
123
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-lint/cmake/SPIRV-Tools-lintTargets-release.cmake,sha256=3QC3rN6BhZ4n5-WrR9pmu4AfH1QKFIGCCXZjPA3A8c0,890
|
124
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-lint/cmake/SPIRV-Tools-lintTargets.cmake,sha256=X2bmbqKDvgHDUaYEjssse8Rgk_ZsETuMMS3EaX2gmo0,5068
|
125
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-opt/cmake/SPIRV-Tools-optConfig.cmake,sha256=CYygoz_0kxDnsT7_NbByRCuviPMS0TwwK86Qwc6tnnw,275
|
126
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-opt/cmake/SPIRV-Tools-optTargets-release.cmake,sha256=vSAY69UsznqGYYqEUdL255U2B3LUZl9PSexaQwmPECw,883
|
127
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-opt/cmake/SPIRV-Tools-optTargets.cmake,sha256=5Erfqk7DZeEa2sveBBlRw8QwBrdBZ55GDdo14DdNxpI,5029
|
128
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-reduce/cmake/SPIRV-Tools-reduceConfig.cmake,sha256=i2lpvjP36I_6iEh5mObgdPMz5UOHQ4wIIOcbP5NIjTk,290
|
129
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-reduce/cmake/SPIRV-Tools-reduceTarget-release.cmake,sha256=D2c9eUqoh3H-ihr_1up2Ppo_2nSLoNyxmo9eWUV_pGE,904
|
130
|
+
gstaichi-2.2.0.data/data/SPIRV-Tools-reduce/cmake/SPIRV-Tools-reduceTarget.cmake,sha256=_Miasn_g_L8dG2fTiigOC-rrDc3aKgHy3IfMi7DB2b4,5077
|
131
|
+
gstaichi-2.2.0.data/data/bin/SPIRV-Tools-shared.dll,sha256=5ppGP1Ophfxs0IgwW_HvRU1en2pK-xi9rTt4p1qRd9E,2042368
|
132
|
+
gstaichi-2.2.0.data/data/include/GLFW/glfw3.h,sha256=QIB4KnbXSK4tfZ99LqTfJdn-ObkYf5vp70ee9uBPzFQ,240786
|
133
|
+
gstaichi-2.2.0.data/data/include/GLFW/glfw3native.h,sha256=3hGJGACURjjhav5xcOb9F1fW76uPjfAzoXZlK3UUxAc,19397
|
134
|
+
gstaichi-2.2.0.data/data/include/spirv-tools/instrument.hpp,sha256=92ifeZiADg0tWjsnYsVqQoH5KbIxxnz3AK-S9r0ln2A,11917
|
135
|
+
gstaichi-2.2.0.data/data/include/spirv-tools/libspirv.h,sha256=3rvQUbgMs9h3jxnC4OLRyPN-lWvqSjHgy7tS3ZkOYvI,42688
|
136
|
+
gstaichi-2.2.0.data/data/include/spirv-tools/libspirv.hpp,sha256=TMJs7spPKjYx0FlnorbOSany4R1k2bk8B4wOi_vttic,15012
|
137
|
+
gstaichi-2.2.0.data/data/include/spirv-tools/linker.hpp,sha256=SKevy72q3RRFOdqQotIb08h9NNMfAnNMKmSF7B20d0A,3691
|
138
|
+
gstaichi-2.2.0.data/data/include/spirv-tools/optimizer.hpp,sha256=5MPYUrk-hRM6tbFkCr2IUKsukO8eAPjA9_DE-ib4Lnk,50060
|
139
|
+
gstaichi-2.2.0.data/data/lib/SPIRV-Tools-diff.lib,sha256=urtOTqmH-lwDZtV6Q7XSsiPW1ThGoLKpuuGxZHM0EOo,4766344
|
140
|
+
gstaichi-2.2.0.data/data/lib/SPIRV-Tools-link.lib,sha256=XVMnz3tdEhhRBJtGNOvmj6zhJjta3GzSTf0JJ5qyZY0,4074904
|
141
|
+
gstaichi-2.2.0.data/data/lib/SPIRV-Tools-lint.lib,sha256=_-9ahDjMWkzxwx3buUQnHbcCqWxoPzsMpcSuirHBz-4,4723542
|
142
|
+
gstaichi-2.2.0.data/data/lib/SPIRV-Tools-opt.lib,sha256=XD2NyvdHVRqMcKcNjGJLrWxYNsM5wAeouoTzYMPmVrk,153197732
|
143
|
+
gstaichi-2.2.0.data/data/lib/SPIRV-Tools-reduce.lib,sha256=93pTUtBuzB-CK2NjW0_2Cs8vfq-4OGL1RQInQAIGPDI,14806994
|
144
|
+
gstaichi-2.2.0.data/data/lib/SPIRV-Tools-shared.lib,sha256=_x4gg9SeOEDkWOsTAKNGJBr1l4eR-cO5xGr4BCvloMg,16470
|
145
|
+
gstaichi-2.2.0.data/data/lib/SPIRV-Tools.lib,sha256=t2l9JVxQyXaYPw3tzbRZlCs7Tx5pCOkWCSQai9c0VMg,37167956
|
146
|
+
gstaichi-2.2.0.data/data/lib/glfw3.lib,sha256=b6C5T4Biazg8XCyPMPwK3ig1K9YxDKIP4sD4Q9QziZQ,687808
|
147
|
+
gstaichi-2.2.0.data/data/lib/cmake/glfw3/glfw3Config.cmake,sha256=YZVL9F2A70B51dNW0W--Scv9ga3cbyZYjlsaDCs-zHk,118
|
148
|
+
gstaichi-2.2.0.data/data/lib/cmake/glfw3/glfw3ConfigVersion.cmake,sha256=mttbBnVYyxo57F-pEE8g4-E62lcH8xYujvlmTQyD7ug,2827
|
149
|
+
gstaichi-2.2.0.data/data/lib/cmake/glfw3/glfw3Targets-release.cmake,sha256=VlH9iN0TgA6MlsPimvnOgTG0gxzsaoGj-RmWEqd9QHA,806
|
150
|
+
gstaichi-2.2.0.data/data/lib/cmake/glfw3/glfw3Targets.cmake,sha256=D3NWABsZAPn6vu3kAtXXUo3Lqql5NiGhSHVqtwg3UOw,4242
|
151
|
+
gstaichi-2.2.0.dist-info/licenses/LICENSE,sha256=HrhfyXIkWY2tGFK11kg7vPCqhgh5DcxleloqdhrpyMY,11558
|
152
|
+
gstaichi-2.2.0.dist-info/METADATA,sha256=nBkJthge9IWTpfA1O3T4kKFNr6xs0w_fVe3jFLA-IqM,4846
|
153
|
+
gstaichi-2.2.0.dist-info/WHEEL,sha256=8UP9x9puWI0P1V_d7K2oMTBqfeLNm21CTzZ_Ptr0NXU,101
|
154
|
+
gstaichi-2.2.0.dist-info/top_level.txt,sha256=BoKkPzj6Sfycl5Ge5sB9QRDVZvFB5R0sxbZn4YNPb80,9
|
155
|
+
gstaichi-2.2.0.dist-info/RECORD,,
|
{gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools/cmake/SPIRV-ToolsConfig.cmake
RENAMED
File without changes
|
File without changes
|
{gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/SPIRV-Tools/cmake/SPIRV-ToolsTarget.cmake
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/cmake/glfw3/glfw3ConfigVersion.cmake
RENAMED
File without changes
|
{gstaichi-2.1.1rc2.data → gstaichi-2.2.0.data}/data/lib/cmake/glfw3/glfw3Targets-release.cmake
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|