Fast Trigonometric Functions using the RLIBM Approach
Park, Nagarakatte
This paper describes our experience developing polynomial approximations for trigonometric functions that produce correctly rounded results for multiple representations and rounding modes using the RLIBM approach. A key challenge with trigonometric functions concerns range reduction with "pi", which reduces a given input in the domain of a 32-bit float to a small domain. Any rounding error in the value of "pi" is amplified during range reduction, which can result in wrong results. We describe our experience implementing fast range reduction techniques that maintain a large number of bits of "pi" both with floating-point and integer computations. The resulting implementations for trigonometric functions are fast and produce correctly rounded results for all inputs for multiple representations up to 32-bits with a single implementation.
تصف هذه الورقة التجربة في تطوير تقريبات متعددة الحدود للدوال المثلثية باستخدام طريقة RLIBM، والتي تنتج نتائج مقربة بشكل صحيح لتمثيلات وأنماط تقريب متعددة. يكمن التحدي الرئيسي للدوال المثلثية في تقليل النطاق الذي يتضمن π، والذي يقلل المدخلات من مجال الأعداد العشرية 32 بت إلى مجال صغير. أي خطأ تقريب في قيمة π يتم تضخيمه أثناء عملية تقليل النطاق، مما قد يؤدي إلى نتائج خاطئة. يصف المؤلفون تجربتهم في تنفيذ تقنيات تقليل نطاق سريعة تحافظ على عدد كبير من أرقام π في كل من الحسابات العشرية والصحيحة. يوفر التنفيذ النهائي للدوال المثلثية سرعة وتقريباً صحيحاً لجميع المدخلات، مع دعم تمثيلات متعددة تصل إلى 32 بت، وذلك باستخدام تنفيذ واحد فقط.
تحدي التقريب الصحيح: تستخدم الحسابات العلمية على نطاق واسع الدوال الأساسية المقدمة من مكتبات رياضية، لكن إنتاج نتائج مقربة بشكل صحيح لجميع المدخلات أمر بالغ الصعوبة ("معضلة جدول الأرقام")، وتفشل مكتبات الرياضيات السائدة في إنتاج نتائج صحيحة لجميع المدخلات.
مشاكل قابلية النقل والتكرار: يؤدي الافتقار إلى التقريب الصحيح في مكتبات الرياضيات إلى إنتاج التطبيقات نتائج مختلفة تماماً على أجهزة مختلفة، مما يؤثر على قابلية النقل والتكرار.
الحاجة إلى تمثيلات متعددة: مع زيادة التنسيقات المخصصة (مثل bfloat16 و tensorfloat32 و FP8)، هناك حاجة إلى مكتبة مرجعية توفر نتائج صحيحة لتمثيلات وأنماط تقريب متعددة.
تقريب متعدد الحدود Minimax: تنتج الطرق التقليدية تقريبات متعددة الحدود تقلل الحد الأقصى للخطأ لجميع المدخلات، لكن عندما تكون القيمة الحقيقية للمخرجات قريبة جداً من حدود التقريب، تنخفض درجات الحرية بشكل كبير.
المقايضة بين الأداء والصحة: تقوم المكتبات الموجودة بالمقايضة بين الأداء (مثل تنفيذ Payne-Hanek) أو الصحة (مثل libm في GCC).
تقنيات تقليل نطاق فعالة: تطوير خوارزمية تقليل نطاق فعالة تجمع بين العمليات الحسابية العشرية والصحيحة، مع الحفاظ على عدد كافٍ من أرقام π لإنتاج نتائج صحيحة.
تنفيذ واحد لتمثيلات متعددة: تنفيذ تقريب متعدد الحدود واحد يمكنه إنتاج نتائج مقربة بشكل صحيح لتمثيلات متعددة من 10 إلى 32 بت وجميع أنماط التقريب القياسية.
تحسين الأداء: يحسن تقليل النطاق القائم على الأعداد الصحيحة الأداء بنسبة 19% مقارنة بالاستراتيجية العشرية، والأداء الإجمالية أسرع أو مكافئة للمكتبات السائدة.
مكتبة دوال مثلثية كاملة: توفير تنفيذات سريعة وصحيحة لدوال sin و cos و tan.
الرؤية الأساسية لطريقة RLIBM هي تقريب نتيجة التقريب الصحيح مباشرة، بدلاً من القيمة الحقيقية للدالة. بالنسبة لنتيجة التقريب الصحيح لمدخل معين، يوجد فاصل قيمة حقيقية، وأي قيمة داخل هذا الفاصل ستقرب إلى النتيجة الصحيحة. يوفر هذا درجات حرية أكبر من طريقة minimax (1 ULP لجميع المدخلات).
تستشهد هذه الورقة بأدبيات مهمة في مجالات التحليل الرقمي والعمليات الحسابية بالفاصلة العائمة والتقريب الصحيح، بما في ذلك:
كتاب Muller المرجعي للدوال الأساسية
مكتبة MPFR عالية الدقة
خوارزمية Payne-Hanek لتقليل النطاق
الأبحاث المتعلقة بمعيار IEEE-754 للفاصلة العائمة
تقدم هذه الورقة مساهمة مهمة في مجال الحسابات الرقمية، حيث تحول الطرق النظرية بنجاح إلى تنفيذ عملي عالي الأداء، وتوفر حلاً فعالاً لمشكلة التقريب الصحيح في الحسابات العلمية.