Là một phần của dự án nghiên cứu
Để thử nghiệm
Ở giai đoạn tiếp theo, người ta cũng lên kế hoạch chuyển các tối ưu hóa RTL liên thủ tục thành các luồng riêng biệt, có tính đến các đặc điểm của nền tảng phần cứng. Sau đó, chúng tôi dự định triển khai song song các tối ưu hóa nội bộ (IPA) được áp dụng cho mã bên trong hàm, bất kể chi tiết cụ thể của lệnh gọi. Liên kết giới hạn hiện tại là trình thu gom rác, đã thêm khóa chung để vô hiệu hóa các hoạt động thu gom rác trong khi chạy ở chế độ đa luồng (trong tương lai trình thu gom rác sẽ được điều chỉnh để thực thi GCC đa luồng).
Để đánh giá những thay đổi về hiệu suất, một bộ thử nghiệm đã được chuẩn bị để tập hợp tệp gimple-match.c, bao gồm hơn 100 nghìn dòng mã và 1700 hàm. Các thử nghiệm trên hệ thống có CPU Intel Core i5-8250U với 4 lõi vật lý và 8 lõi ảo (Siêu phân luồng) cho thấy thời gian thực hiện tối ưu hóa GIMPLE theo thủ tục nội bộ giảm từ 7 xuống 4 giây khi chạy 2 luồng và xuống 3 giây khi chạy 4 luồng. chủ đề, tức là Tốc độ của giai đoạn lắp ráp đang được xem xét đã tăng lần lượt là 1.72 và 2.52 lần. Các thử nghiệm cũng cho thấy việc sử dụng lõi ảo với Hyperthreading không dẫn đến tăng hiệu suất.
Tổng thời gian xây dựng đã giảm khoảng 10%, nhưng theo dự báo, việc tối ưu hóa RTL song song sẽ cho phép đạt được nhiều kết quả rõ ràng hơn vì giai đoạn này mất nhiều thời gian hơn đáng kể trong quá trình biên dịch. Khoảng sau khi song song hóa RTL, tổng thời gian lắp ráp sẽ giảm đi 1.61 lần. Sau này, có thể giảm thời gian xây dựng thêm 5-10% bằng cách song song tối ưu hóa IPA.
Nguồn: opennet.ru