首頁 >後端開發 >Python教學 >Python C 快速 CPU 基準測試

Python C 快速 CPU 基準測試

WBOY
WBOY原創
2024-08-27 06:06:36397瀏覽

Python C a Quick CPU Benchmark

Python 3.13 定於 10 月發布,但第一個候選版本已於 8 月初發布。去年,我使用 Mandelbrot 集計算做了一個 3.12 版本的快速 CPU 限制基準測試。

所有檔案就位後,我從官方網站下載了 3.13RC 版本,並在我的 M1 Mac Book Pro 上測試了 3 個版本的 Python:

user@users-MacBook-Pro py_chat_ui % python --version
Python 3.11.9
user@users-MacBook-Pro py_chat_ui % python3 --version
Python 3.12.5
user@users-MacBook-Pro py_chat_ui % python3.13 --version
Python 3.13.0rc1

以下是依賴 NumPy 實現的執行時間(以秒為單位)(對應版本 3.11、3.12 和 3.13RC1):

user@users-MacBook-Pro mandelbrot % python mandelbrot.py   
1 Execution Time: 6.305059909820557                   78513419
2 Execution Time: 6.282307863235474                   78513419
3 Execution Time: 6.473501920700073                   78513419
user@users-MacBook-Pro mandelbrot % python3 mandelbrot.py
1 Execution Time: 5.418003082275391                   78513419
2 Execution Time: 5.412122011184692                   78513419
3 Execution Time: 5.434246778488159                   78513419
user@users-MacBook-Pro mandelbrot % python3.13 mandelbrot.py
1 Execution Time: 7.197513818740845                   78513419
2 Execution Time: 7.212265968322754                   78513419
3 Execution Time: 7.200297832489014                   78513419

以及純 Python 實現的結果:

user@users-MacBook-Pro mandelbrot % python mandelbrot_pure.py
1 Execution Time: 41.18416976928711                   78513425
2 Execution Time: 41.16466403007507                   78513425
3 Execution Time: 41.148504972457886                   78513425
4 Execution Time: 41.55486297607422                   78513425
user@users-MacBook-Pro mandelbrot % python3 mandelbrot_pure.py
1 Execution Time: 49.806406021118164                   78513425
2 Execution Time: 49.485753774642944                   78513425
3 Execution Time: 49.52305006980896                   78513425
4 Execution Time: 49.57118225097656                   78513425
user@users-MacBook-Pro mandelbrot % python3.13 mandelbrot_pure.py
1 Execution Time: 41.07340693473816                   78513425
2 Execution Time: 41.08624267578125                   78513425
3 Execution Time: 41.09266400337219                   78513425
4 Execution Time: 41.1431610584259                   78513425

坦白說,我對結果的不一致感到困惑 - 更新並不意味著更好:)

P.S. >

僅供參考,使用 JiT 編譯的 Dart 程式和 AoT 編譯的 C 版本執行 Mandelbrot 計算:

user@users-MacBook-Pro mandelbrot % dart mandelbrot.dart
1  Execution Time: 0.476                       78513425
2  Execution Time: 0.484                       78513425
3  Execution Time: 0.475                       78513425
user@users-MacBook-Pro mandelbrot % gcc -o mandelbrot mandelbrot.c -Ofast
user@users-MacBook-Pro mandelbrot % ./mandelbrot 
1 Execution Time: 0.256706           79394433
2 Execution Time: 0.234396           79394433
3 Execution Time: 0.234862           79394433

P.P.S. > 這是 GitHub 儲存庫,其中使用不同語言實現了相同的基準測試。

P.P.P.S。 > 這是去年比較 Python、Numba 和 Mojo 的貼文。

以上是Python C 快速 CPU 基準測試的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn