有沒有一種更有效的方法來獲得兩個內存塊的絕對差之和在C/C + +中的double
數組比執行循環的數組元素?所以,我奇怪的是,如果有此目的類似功能memset
,memcpy
,memcmp
等有效的方法來獲得兩個陣列的雙倍絕對差的總和
你是如何定義的區別?
存儲器塊包含double
值,並且我需要的是在存儲器塊陣列的對應的索引值之間的絕對數值差的總和。
有沒有一種更有效的方法來獲得兩個內存塊的絕對差之和在C/C + +中的double
數組比執行循環的數組元素?所以,我奇怪的是,如果有此目的類似功能memset
,memcpy
,memcmp
等有效的方法來獲得兩個陣列的雙倍絕對差的總和
你是如何定義的區別?
存儲器塊包含double
值,並且我需要的是在存儲器塊陣列的對應的索引值之間的絕對數值差的總和。
是的,有SIMD。如果您使用GCC,您可以嘗試添加諸如-msse2 -O3
之類的東西,並查看它是否會自動爲您生成SIMD指令。如果確實如此,或者如果您選擇使用庫來執行顯式SIMD,則可以按指令處理四個浮點數。爲了提高您的機會,請儘量讓內部循環更加簡單,以便優化程序可以輕鬆應對。
你如何定義差異? – detly
內存塊包含double值,我需要的是內存塊對應索引中值之間絕對數值差的總和。 – user2503950
如果你正在談論雙打,你不是在談論「內存塊」,你正在談論數組。 –