儘管 C 的 std::atomic
原子雙操作x86_64
x86_64 上的SSE/AVX向量操作
雖然 C 目前缺乏對原子 AVX/SSE 向量操作的支持,但沒有辦法保證 128b 或 256b 緩存行在整個緩存中的原子傳輸系統。 但是,在對齊雙精確度的共用陣列上使用向量載入/儲存時,可以採取某些預防措施來最大程度地降低撕裂風險。原子 16B 載入
原子 16B 儲存和 RMW
原子操作具有 8B 半部的 16B 物件
編譯器和原子操作
編譯器可能不會總是產生最優的原子操作的組譯程式碼。例如,他們可能會避免在 XMM 和雙寄存器之間直接進行 movsd 加載/存儲,而是選擇迂迴方法。以上是儘管存在 C 限制,如何在 x86_64 上實現雙精度和向量的原子操作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!