# 2016q3 Homework1 (compute-pi) contributed by <`TotallyWrong`> ###### tags: `TotallyWrong` `On going` --- ## 開發作業環境 **CPU** : Intel Core i5-5200U **Cache size**: L1 Cache 128KB, L2 Cache 512K, L3 Cache 3072KB **Operating System** : Ubuntu 15.10 Wily Werewolf **Feature**: * MMX instructions * SSE / Streaming SIMD Extensions * SSE2 / Streaming SIMD Extensions 2 * SSE3 / Streaming SIMD Extensions 3 * SSSE3 / Supplemental Streaming SIMD Extensions 3 * SSE4 / SSE4.1 + SSE4.2 / Streaming SIMD Extensions 4 ? * AES / Advanced Encryption Standard instructions * AVX / Advanced Vector Extensions * AVX2 / Advanced Vector Extensions 2.0 ## 使用 Ubuntu 15.10 ### 圓周律 再測試過原始的圓周程式後,得到的結果如下圖而Baseline的結果是最差的而結果最好的是AVX+Urolling。 而OMP2 thread 結果似乎比OMP4好,但是我懷疑這是因為我的電腦腦是二核心的, 因為不管幾個線程最終還是只有二核。 ![](https://i.imgur.com/xPEttku.png) 這是我寫出來採用萊布尼茨公式的結果,而可以看出OMP2和4的效果是最好似乎這種算法是比較有利平行化。但是OMP2和4還是很相進甚至OMP2的效果可能更好一點看來有4個線程和有四核心還是不同的事情 ![](https://i.imgur.com/UQ6sHDX.png) 放在一起萊布尼茨的OMP2效果是最好的 ![](https://i.imgur.com/PFfgZx3.png)