Làm cách nào để kích hoạt AMD Turbo Core trên Ubuntu 14.04?


9

Tôi đang sử dụng Ubuntu 14.04 (kernel 3.13.0-24) trên máy tính xách tay dựa trên AMD A8-4500m và gần đây tôi đã nhận thấy rằng AMD Turbo Core hoàn toàn không hoạt động. Mọi thứ hoạt động trên Windows, tuy nhiên, trên tần số CPU Linux không thể vượt quá 1,9 GHz (được kiểm tra bằng cpufreq-aperf).

Đây là đầu ra của cpupower frequency-info, thông báo Hoạt động: không có hỗ trợ nhà nước tăng cường:

analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 4.0 us.
  hardware limits: 1.40 GHz - 1.90 GHz
  available frequency steps: 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.40 GHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance
  current policy: frequency should be within 1.90 GHz and 1.90 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 1.90 GHz (asserted by call to hardware).
  cpufreq stats: 1.90 GHz:32,63%, 1.80 GHz:0,74%, 1.70 GHz:0,50%, 1.60 GHz:1,20%, 1.40 GHz:64,93%  (9287)
  boost state support:
    Supported: yes
    Active: no
    Boost States: 2
    Total States: 8
    Pstate-Pb0: 2800MHz (boost state)
    Pstate-Pb1: 2300MHz (boost state)
    Pstate-P0:  1900MHz
    Pstate-P1:  1800MHz
    Pstate-P2:  1700MHz
    Pstate-P3:  1600MHz
    Pstate-P4:  1400MHz
    Pstate-P5:  900MHz

Nhiều thử nghiệm hơn (được chạy với bộ lập lịch ondemand và 3 trường hợp giải mã ffmpeg video 1920x1080 H.264 ở chế độ nền):

[m132@m132 turbostat]$ sudo cpupower monitor
[sudo] password for m132: 
     |Mperf               || Idle_Stats         
 CPU | C0   | Cx   | Freq || POLL | C1   | C2   
    0| 97,78|  2,22|  1821||  0,00|  0,00|  0,00
    1| 97,84|  2,16|  1821||  0,00|  0,00|  0,00
    2| 99,22|  0,78|  1807||  0,00|  0,00|  0,00
    3| 99,18|  0,82|  1808||  0,00|  0,00|  0,00
[m132@m132 turbostat]$ sudo ./turbostat 
cor CPU   GHz  TSC time
        1.81 1.90   5**
  0   0 1.81 1.90   5**
  1   1 1.81 1.90
  2   2 1.80 1.90
  3   3 1.81 1.90

EDIT: Có vẻ như bộ xử lý dòng Trinity có bộ chuyển đổi BAPM của riêng nó trong nguồn. Nó nằm trong trình điều khiển / gpu / drm / radeon / trinity_dpm.c và nó (tại thời điểm viết) chỉ được bật cho các bảng MSI, vì vấn đề ổn định. Để kích hoạt nó, hãy mở tập tin này, tìm dòng này:

    pi->enable_bapm = false;

Thay đổi false thành true, sau đó biên dịch và cài đặt kernel mới. Bạn sẽ nhận được một hạt nhân hoảng loạn làm việc ngay bây giờ. Hãy nhớ rằng sức mạnh của CPU cũng được chia sẻ với GPU, vì vậy bạn sẽ hầu như không bao giờ có được tần số cao nhất nếu GPU cũng được sử dụng.


1
Thật kỳ lạ, cài đặt Turbo Core "kích hoạt" fglrx, và bây giờ nó hiển thị "Hoạt động: có". cpufreq-aperfđôi khi báo cáo tần số 2GHz, nhưng nó vẫn không chuyển sang 2,3 GHz hoặc 2,8 GHz, như trên Windows.
m132

Chỉ cần xác nhận: Tôi đang gặp vấn đề tương tự với A10-7850K theo Fedora w / kernel 3.14.5: Được hỗ trợ: có, Hoạt động: không. Có vẻ không phải là distro cụ thể.
Chris

Bạn có thể thử vô hiệu hóa chế độ kernel ( nomodesettrên dòng lệnh kernel) không? Điều này đã khắc phục vấn đề này cho tôi.
Chris

1
@Chris Bây giờ nó hiển thị Active: yes, nhưng tôi cho rằng thông tin này là sai, vì không có Pstates nào được hiển thị và cpufreq-aperfvẫn không báo cáo tần số cao hơn 1,9 GHz. Ngoài ra, nó buộc phải sử dụng phần mềm kết xuất OpenGL cho tôi.
m132

Thế còn turbostathay cpupower monitor? Họ cho thấy turbo đang được sử dụng?
Chris

Câu trả lời:


5

[Cập nhật 2015]

Bắt đầu với Linux 3.16:

  • Giá trị cho bapmcó thể được cung cấp dưới dạng tham số mô-đun (xem tại đây ).

  • Giá trị của bapmđược đặt thành 1 theo mặc định cho Kaveri, Kabini và Trinity, hệ thống Richland (xem tại đây ), dẫn đến Turbo Core được kích hoạt.

Điều đó có nghĩa là với Kernel 3.16 trở lên, Turbo Core sẽ hoạt động ngay lập tức với radeonnhiều trường hợp.

Nếu bạn chạy Debian hoặc nếu bạn chạy Ubuntu và những điều trên không đúng với bạn, vui lòng tham khảo Cách thiết lập hệ thống Debian (tập trung vào 2D hoặc bàn điều khiển / máy chủ) với APU AMD Turbo Core để đạt hiệu quả năng lượng và tính toán tối đa ?

[Cập nhật 2014-ngày 8 tháng 8]

Tôi đã xuất bản một phân tích chi tiết trongunix-stackexchange.com đó có (ít nhất là đối với tôi) một vài điều ngạc nhiên. Chẳng hạn như ondemandthống đốc có khả năng tồi tệ hơn performance(ít nhất là với Richland A10-6700) và fglrxrõ ràng sử dụng một số thủ thuật đáng ngờ để cải thiện các đợt tăng ngắn hạn, đột nhiên phải bù đắp điều đó trong thời gian dài. Tôi rất vui vì tôi đã xem xét kỹ hơn về điều này.

[Câu trả lời gốc]

Tôi đang trong quá trình định cấu hình hệ thống với A10-6700 bằng Máy chủ Ubuntu 14.04.

  • Đầu ra của cat /proc/cpuinfokhông, và sẽ không, phản ánh bất kỳ sự tăng cường bộ xử lý nào. Sự gia tăng là một quyết định tự trị trên chip dựa trên các tiêu chí có thể phức tạp. Đọc về nó ở đây .
  • Đầu ra của cpufreq-infosẽ không hiển thị tần số tăng có sẵn, nhưng đầu ra của cpupower frequency-infoý chí. Đối với A10-6700, nó sẽ hiển thị 4300 MHz (Pb0), 4200 MHz (Pb1) và 3900 MHz (Pb2) ngoài 3700, 3400, 2700, 2300 và 1800 MHz thông thường.
  • Đầu ra của cpufreq-aperf(sau modprobe msr) tương đương với đầu ra của cpupower monitor. Các tần số được hiển thị bởi các công cụ này được cho là phản ánh mức tăng.
  • Với trình điều khiển video tiêu chuẩn hoặc thậm chí radeonmô-đun trong kernel, tôi đã không thành công để có được A10-6700 để sử dụng tần số tăng (sử dụng stress --cpu 2).
  • Với fglrxmô-đun ATI / AMD được tải vào kernel, bộ xử lý sẽ tăng hai lõi vĩnh viễn (và rõ ràng cũng là các lõi còn lại tạm thời). Điều này đã được thử nghiệm mà không có X được sử dụng hoặc thậm chí được cấu hình.

Hãy nhớ rằng, quyết định cho hoặc chống lại sự gia tăng được APU đưa ra một cách tự chủ. Theo dự đoán của tôi tại thời điểm này là APU không thể quyết định liệu công suất tiêu tán hiện tại của nó có còn tăng hay không trừ khi đơn vị đồ họa tích hợp được khởi tạo đầy đủ.

Đầu ra video với mô-đun chuẩn khác với đầu ra khi tải fglrx. Do đó, chúng ta chỉ có thể đoán liệu hạt nhân có thể đưa APU vào chế độ "thông minh" (nhận biết mất điện) được yêu cầu hay không, trong khi vẫn sử dụng mô-đun VGA.

Cho đến khi điều này được sắp xếp ra, tôi sẽ chỉ cần tải fglrx. Nhược điểm là việc xây dựng nó đòi hỏi rất nhiều thứ bạn không muốn trên máy chủ và cần phải xóa sau khi biên dịch.

Ngoài ra, fglrxcó kích thước gần 9 MB. Đó không phải là vấn đề nhưng biết rằng chủ yếu là hàng hóa chết trong trường hợp này không làm tôi quá hạnh phúc.

[Chỉnh sửa 2014-Jul-24]

Bây giờ tôi đã báo cáo lỗi này .

Tôi nhận thấy một lỗi khác cũng đã được báo cáo: Nếu trên thực tế bạn sử dụng fglrxvà thử sử dụng chế độ Quản lý năng lượng động .


Cảm ơn bạn về thông tin. Tôi sẽ biên dịch kernel mới với BAPM được kích hoạt, như được đề xuất trên báo cáo lỗi thứ 2, để xem liệu nó có tạo ra sự khác biệt nào không :)
m132

Có vẻ như BAPM được bật theo mặc định trên kernel 3.16. Ít nhất là đối với tôi, việc nâng cấp đã không khắc phục được vấn đề này. Tuy nhiên, vô hiệu hóa DPM hoạt động, tôi có tần số trên 1,8 GHz, nhưng sau đó máy tính xách tay của tôi bắt đầu quá nóng và giới hạn tốc độ CPU xuống 1,1 GHz, do đó hiệu suất thậm chí còn tệ hơn.
m132

@ M132 Điều đó thật đáng buồn. Tuy nhiên, nó góp phần vào sự nghi ngờ. - Bạn có thấy hành vi tương tự với Windows không? - Bạn có thể ảnh hưởng đến việc kiểm soát quạt? - Thật đáng tiếc khi nhà sản xuất dường như không hợp tác với AMD đủ tốt - TurboBoost là một tính năng thường xuyên trong phạm vi của TDP.
Chạy CMD

Bây giờ tôi không thể kiểm tra vì tôi đã xóa Windows để tạo phân vùng riêng cho / home. Tôi không biết về người hâm mộ, nhưng tôi nhớ Trình quản lý tác vụ, hiển thị cho tôi tần số CPU 2,3 GHz, vì vậy TurboBoost đã hoạt động và nó không quá nóng, do đó, DPM cũng hoạt động.
m132

Nhờ những bình luận của ngày hôm qua về vấn đề bạn đã báo cáo, cuối cùng tôi đã làm cho nó hoạt động! Đọc câu hỏi để biết chi tiết: D
m132

2

Tôi gặp vấn đề tương tự với Thinkpad của tôi chạy cùng AMD A8-4500m trên Ubuntu 13.10. Tôi đã tìm thấy điều này ngày hôm nay, nhưng tiếng Anh của tôi không tốt lắm, vì vậy tôi không hiểu nó.

https://www.kernel.org/doc/Documentation/cpu-freq/boost.txt

Có thể nó sẽ hữu ích cho bạn.

Điểm bắt đầu chính mà tôi tìm thấy là, Turbo Core không được hỗ trợ kể từ ngày 11.10. Đó là tất cả những gì tôi tìm thấy. Hãy chứng minh cho tôi rằng tôi sai.


1
Liên kết này chỉ giải thích Turbo Boost / Core là gì và cách bật / tắt nó, nhưng trong trường hợp của tôi / sys / thiết bị / hệ thống / cpu / cpufreq / boost đã là 1 (đã bật).
m132

Không nơi nào tuyên bố rằng TurboCore không được hỗ trợ. Ngược lại là trường hợp. Nhận xét của @ M132 là chính xác.
Chạy CMD
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.