2011-01-13 41 views
9

Ai cũng có thể cung cấp một số dữ liệu cho thấy hiệu suất của mã đầu ra bởi JIT của llvm, nói so với biên dịch tĩnh với -O3? Nó là tốt hơn rằng hiệu suất như vậy được minh họa bằng điểm chuẩn spec. Mọi người nói rằng mã đầu ra của JIT chậm. Tôi chỉ tò mò nó chậm đến mức nào.Hiệu suất JIT của LLVM

+1

Bạn đã thử chưa? Tôi có nghĩa là làm thế nào cứng là nó để tải về [một bộ tiêu chuẩn] (http://www.netlib.org/benchmark/dhry-c) và biên dịch nó một lần với GCC và một lần với Clang để xem sự khác biệt có thể là gì? –

+2

Tự mình thử tất nhiên là một lựa chọn. Nhưng tôi không nghĩ rằng việc đánh giá toàn bộ điểm chuẩn là một công việc dễ dàng, đặc biệt là khi tôi không quen thuộc với việc biên dịch jit của llvm. Tôi đoán ai đó đã làm điều đó, và tôi chỉ muốn biết kết quả. – dalibocai

+1

Bạn có hỏi về hiệu suất của bản thân JIT * không (như trong đó, phải mất bao lâu để thực hiện việc biên dịch ngay), hoặc hiệu suất của mã được tạo ra? –

Trả lời

5

Give trình bày này một read, nó bao gồm các tiêu chuẩn của JIT tạo mã (cho một JVM & Net tuy nhiên, thật không may, hầu hết các tiêu chuẩn sẽ cho các ngôn ngữ hiện có với một JIT backend mới, chẳng hạn như Rubinius). Ngoài ra còn có một vài đồ thị thú vị here.

Là phần thưởng bổ sung, here là bản trình bày về xây dựng JIT hiệu quả với LLVM và Clang bao gồm mức sử dụng bộ nhớ và tốc độ chuẩn của quá trình JITing, điều này có thể ảnh hưởng đến tốc độ và chất lượng của mã được tạo. tạo điểm chuẩn của riêng bạn.

Tuy nhiên, bạn cũng có thể thấy this question thú vị.