本文簡要介紹rust語言中 f32.mul_add
的用法。
用法
pub fn mul_add(self, a: f32, b: f32) -> f32
融合multiply-add。計算 (self * a) + b
時隻有一個舍入誤差,比未融合的 multiply-add 產生更準確的結果。
使用mul_add
可能如果目標體係結構具有專用的 multiply-add,則性能比未融合的fma
CPU 指令。然而,這並不總是正確的,並且將在很大程度上依賴於設計算法時考慮到特定的目標硬件。
例子
let m = 10.0_f32;
let x = 4.0_f32;
let b = 60.0_f32;
// 100.0
let abs_difference = (m.mul_add(x, b) - ((m * x) + b)).abs();
assert!(abs_difference <= f32::EPSILON);
相關用法
- Rust f32.minimum用法及代碼示例
- Rust f32.min用法及代碼示例
- Rust f32.maximum用法及代碼示例
- Rust f32.max用法及代碼示例
- Rust f32.exp用法及代碼示例
- Rust f32.hypot用法及代碼示例
- Rust f32.sqrt用法及代碼示例
- Rust f32.abs_sub用法及代碼示例
- Rust f32.cos用法及代碼示例
- Rust f32.is_sign_positive用法及代碼示例
- Rust f32.log10用法及代碼示例
- Rust f32.total_cmp用法及代碼示例
- Rust f32.from_ne_bytes用法及代碼示例
- Rust f32.recip用法及代碼示例
- Rust f32.sinh用法及代碼示例
- Rust f32.ln_1p用法及代碼示例
- Rust f32.to_bits用法及代碼示例
- Rust f32.from_be_bytes用法及代碼示例
- Rust f32.atan2用法及代碼示例
- Rust f32.from_bits用法及代碼示例
- Rust f32.to_radians用法及代碼示例
- Rust f32.atanh用法及代碼示例
- Rust f32.cbrt用法及代碼示例
- Rust f32.to_be_bytes用法及代碼示例
- Rust f32.is_infinite用法及代碼示例
注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 f32.mul_add。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。