gpu.cpp β Π»Π΅ΠΊΠ° ΠΏΡΠ΅Π½ΠΎΡΠΈΠΌΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π·Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π½Π° Π³ΡΠ°ΡΠΈΡΠ½ΠΈ ΡΠΎΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ. ΠΠ° ΡΠ°Π±ΠΎΡΠ° Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΡΠ°ΠΌΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡ C++, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΡΠ°Π½Π΄Π°ΡΡ C++17 (ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΈΡΠΈΠ½Π° Π½Π°ΡΡΠΎΡΠ²Π°Ρ Π·Π° clang), ΠΈ ΡΠ°ΠΌΠ°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°. ΠΠ±ΡΠ²ΡΠ²Π° ΡΠ΅, ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ Π½Π° Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠΈ Vulkan, Metal ΠΈΠ»ΠΈ DirectX.
ΠΠ°ΡΠΎ ΠΏΡΠ΅Π΄ΠΈΠΌΡΡΠ²Π° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΏΠΎΡΠΎΡΠ²Π°Ρ:
- Π±ΡΡΠ·ΠΈΠ½Π° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ, ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ 5 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ Π½Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ Π Π‘;
- ΠΏΡΠΎΡΡΠΎΡΠ° Π½Π° API;
- ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ β ΡΠ°ΠΌΠΈΡΡ ΠΊΠΎΠ΄ ΡΠ΅ ΠΏΠΎΠ±ΠΈΡΠ° Π² gpu.h Ρ ΠΎΠΊΠΎΠ»ΠΎ Ρ ΠΈΠ»ΡΠ΄Π° ΡΠ΅Π΄Π° ΠΊΠΎΠ΄, ΠΎΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ python3 ΠΈ make.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π΅ Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° WebGPU. ΠΠΈΡΠ΅Π½Π·ΠΈΡΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π΅ Apache License 2.0.
ΠΠ° Π»ΠΈΠ½ΠΊΠ° ΠΈΠΌΠ° ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π·Π° ΠΊΠΎΠ΄.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: linux.org.ru
