HeadlinesBriefing HeadlinesBriefing.com

Putaran mengalahkan radian dalam efisiensi kode

Hacker News •
×

Perdebatan tau versus pi telah mendominasi diskusi tentang konstanta matematis dalam pemrograman, tetapi peluang yang lebih signifikan telah terlewatkan: menghilangkan radian sepenuhnya.

Kebanyakan kode menggunakan pi atau tau untuk mengonversi nilai ke radian untuk fungsi trigonometri. Sebagai contoh, dalam kode sumber Godot Engine, pengembang mengalikan nilai periodik h dengan tau sebelum memanggil sin, meskipun h sudah berada dalam rentang [0, 1]. Konversi ini tidak perlu karena pustaka matematis secara internal mengalikan input dengan 4/pi segera, secara efektif membatalkan konversi.

Menggunakan putaran alih-alih radian menyederhanakan kode dan meningkatkan akurasi. Parameter putaran memparameterisasi lingkaran dari 0 hingga 1, di mana 0.25 mewakili tepat 90 derajat, berbeda dengan radian yang tidak dapat merepresentasikan sudut umum dengan akurat. Pendekatan ini menghilangkan perkalian dan pembagian yang berulang-ulang.

Bagi mereka yang menggunakan pustaka yang ada, setengah putaran menawarkan alternatif praktis. Fungsi intrinsik sincospi CUDA menghitung sinus dan cosinus dari input yang dikalikan dengan pi, secara efektif menggunakan setengah putaran. Dengan memanggil sincospi dengan setengah putaran alih-alih sin dan cos dengan radian, pengembang dapat segera berhenti menggunakan konstanta pi dan tau.

Artikel ini berargumen bahwa beralih ke putaran atau setengah putaran di seluruh basis kode biasanya melibatkan perubahan minimal, seringkali hanya menghapus kode konversi yang tidak diperlukan. Pustaka biasanya mengonversi radian secara internal dengan cara apapun, yang membuat transisi ini langsung dan bermanfaat.

Entitas kunci: Perusahaan: Godot Engine

Sumber: Hacker News · Diringkas oleh HeadlinesBriefing