HeadlinesBriefing HeadlinesBriefing.com

कोड दक्षता में टर्न्स बेहतर

Hacker News •
×

tau versus pi का विचार विकास के बारे में चर्चाओं को प्रभावित करता है, लेकिन एक अधिक महत्वपूर्ण अवसर अनदेखा हो गया है: रेडियन को पूरी तरह से समाप्त करना।

अधिकांश कोड त्रिकोणमितीय फ़ंक्शन के लिए रेडियन में मानों को बदलने के लिए pi या tau का उपयोग करता है। उदाहरण के लिए, Godot Engine सourse कोड में, डेवलपर sin को कॉल करने से पहले एक आवधिक मान h को tau से गुणा करते हैं, हालाँकि h पहले से ही [0, 1] श्रेणी में है। यह रूपांतरण आवश्यक नहीं है क्योंकि गणितीय लाइब्रेरी आंतरिक रूप से इनपुट को 4/pi से तुरंत गुणा करती है, जिससे रूपांतरण को रद्द कर दिया जाता है।

रेडियन के बजाय टर्न्स का उपयोग करने से कोड सरल हो जाता है और सटीकता में सुधार होता है। एक टर्न एक वृत्त को 0 से 1 तक पैरामीटर करता है, जहाँ 0.25 सटीक रूप से 90 डिग्री का प्रतिनिधित्व करता है, जो रेडियन के विपरीत है जो सामान्य कोणों का प्रतिनिधित्व नहीं कर सकते। यह दृष्टिकोण अत्यधिक गुणा और भाग को समाप्त करता है।

उन डेवलपर्स के लिए जो मौजूदा लाइब्रेरी का उपयोग करते हैं, आधा टर्न एक व्यावहारिक विकल्प प्रदान करता है। CUDA का sincospi अंतर्निहित फ़ंक्शन pi से गुणा किए गए इनपुट के साइन और कोसाइन की गणना करता है, प्रभावी रूप से आधा टर्न का उपयोग करता है। sincospi को आधा टर्न के साथ कॉल करके sin और cos (रेडियन के साथ) के बजाय, डेवलपर्स तुरंत ही pi और tau स्थिरांकों का उपयोग बंद कर सकते हैं।

लेख तर्क करता है कि पूरे कोडबेस में टर्न्स या आधा टर्न में स्विच करना आमतौर पर न्यूनतम परिवर्तनों से संबंधित है, अक्सर केवल अनावश्यक रूपांतरण कोड को हटाना होता है। लाइब्रेरी आम तौर पर आंतरिक रूप से रेडियन को बदलती है, जिससे यह संक्रमण सीधा और लाभदायक होता है।

मुख्य इकाइयाँ: कंपनियाँ: Godot Engine

स्रोत: Hacker News · HeadlinesBriefing द्वारा सारांशित