Taichi v1.5.0이 출시되었습니다. Taichi Lang은 고성능 수치 컴퓨팅을 위한 오픈 소스 명령형 병렬 프로그래밍 언어입니다. Python에 내장되어 있으며 LLVM과 같은 JIT(Just-In-Time 컴파일러) 프레임워크를 사용하여 연산 집약적인 Python 코드를 네이티브 GPU 또는 CPU 명령으로 오프로드합니다.
구체적인 업데이트는 다음과 같습니다.
지원 중단 알림
- ndarray는 더 이상 ndim 매개변수로 대체된 field_dim을 허용하지 않습니다.
- [RFC] TiRT 및 해당 C API를 위해 ti.cc 백엔드 사용 중단
새로운 기능
AOT
- Taichi Runtime(TiRT)은 이제 이전 모바일 플랫폼과의 호환성을 위해 Apple의 Metal API 및 OpenGL ES를 지원합니다. 이제 Taichi 프로그램을 모든 주요 소비자 장치에 배포할 수 있습니다.
모바일 플랫폼에서 Taichi 프로그램의 배포는 실험적입니다. - Taichi AOT는 이제 float16 dtype을 완벽하게 지원합니다.
은다레이
- ndarrays는 이제 범위를 벗어난 검사를 지원합니다.
개선하다
파이썬 프런트 엔드
구조 반환은 이제 LLVM 기반 백엔드(CPU 및 CUDA 백엔드)에서 지원됩니다. 이 구조는 벡터와 행렬을 포함할 수 있으며 다른 구조와 중첩될 수 있습니다. 예:
s0 = 티 . 유형 . 구조체 ( a = ti . math . vec3 , b = ti . i16 ) s1 = ti . 유형 . 구조체 ( a = ti . f32 , b = s0 ) @ ti . 커널 def foo () -> s1 : s1 반환 ( a = 1 , b = s0 ( a = ti . 수학 . vec3 ( 100 , 0.2 , 3 ), b = 1 )) print ( foo ()) # {'a': 1.0, 'b': {'a': [100.0 , 0.2, 3.0], 'b': 1}}
성능
- half2에서 CUDA 백엔드의 원자적 작업을 지원합니다(계산 능력 > 60). ti.init(half2_vectorization=True)로 활성화할 수 있습니다. 이 기능은 Nerf 교육 프로세스의 속도를 효과적으로 높일 수 있습니다. 자세한 내용은 이 저장소를 참조하세요.
귀이
- GGUI에는 이제 계산 백엔드 제한이 없습니다. 이전에 GGUI에서 지원했던 CPU, CUDA, Vulklan 외에도 이제 Metal, OpenGL, AMDGPU 또는 DirectX 11도 사용할 수 있습니다.
- GGUI는 현재 mesa의 소프트웨어 래스터라이저 lavapipe에서 검증되었으며 헤드리스 서버 시각화 또는 그래픽 기능이 없는 서버(예: A100)에서 이 솔루션을 사용할 수 있습니다.
- GGUI에서 최대 프레임 속도를 조정하기 위한 fps_limit 옵션을 추가했습니다.
자세한 내용은 릴리스 정보를 참조하십시오 .