當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Julia muladd用法及代碼示例


用法一

muladd(x, y, z)

組合 multiply-add:計算 x*y+z ,但允許將加法和乘法相互合並或與周圍的操作合並以提高性能。例如,如果硬件有效地支持它,這可以實現為 fma 。由於不斷傳播或其他優化,結果在不同機器上可能不同,也可能在同一機器上不同。請參閱 fma

例子

julia> muladd(3, 2, 1)
7

julia> 3 * 2 + 1
7

用法二

muladd(A, y, z)

組合 multiply-add、A*y .+ z ,用於 matrix-matrix 或 matrix-vector 乘法。結果始終與 A*y 大小相同,但 z 可能更小,或者是標量。

Julia 1.6

這些方法需要 Julia 1.6 或更高版本。

例子

julia> A=[1.0 2.0; 3.0 4.0]; B=[1.0 1.0; 1.0 1.0]; z=[0, 100];

julia> muladd(A, B, z)
2×2 Matrix{Float64}:
   3.0    3.0
 107.0  107.0

相關用法


注:本文由純淨天空篩選整理自julialang.org 大神的英文原創作品 Base.muladd — Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。