Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:Devel
Phiên bản không được hỗ trợ:12 / 11

32.1.Là gìJITkèo bóng đá cúp c2 soạn?

Just-Time (JIT) kèo bóng đá cúp c2 là quá trình biến một số hình thức đánh giá chương trình được giải thích thành một chương trình gốc và làm như vậy trong thời gian chạy. Ví dụ: thay vì sử dụng mã có mục đích chung có thể đánh giá các biểu thức SQL tùy ý để đánh giá một vị ngữ SQL cụ thể nhưTrong đó a.col = 3, có thể tạo ra một hàm cụ thể cho biểu thức đó và có thể được thực hiện bởi CPU, mang lại tốc độ tăng tốc.

PostgreSQLHỗ trợ tích hợp để thực hiệnJITkèo bóng đá cúp c2 bằng cách sử dụngLLVMKhiPostgreSQLđược xây dựng với--with-llvm.

xemsrc/backend/jit/readmeĐể biết thêm chi tiết.

32.1.1.JITHoạt động tăng tốc

Hiện tạiPostgreSQL'sJITThực hiện có hỗ trợ để tăng tốc đánh giá biểu thức và biến dạng tuple. Một số hoạt động khác có thể được tăng tốc trong tương lai.

Đánh giá biểu thức được sử dụng để đánh giáWHEREmệnh đề, danh sách mục tiêu, tập hợp và dự đoán. Nó có thể được tăng tốc bằng cách tạo mã cụ thể cho từng trường hợp.

Biến dạng tuple là quá trình chuyển đổi một bộ tuple trên đĩa (xemPhần 73.6.1) vào biểu diễn trong bộ nhớ của nó. Nó có thể được tăng tốc bằng cách tạo một hàm cụ thể cho bố cục bảng và số lượng cột được trích xuất.

32.1.2.Nội địa

PostgreSQLrất có thể mở rộng và cho phép các loại dữ kèo bóng đá cúp c2 mới, chức năng, toán tử và các đối tượng cơ sở dữ kèo bóng đá cúp c2 khác được xác định; nhìn thấyChương 38. Trong thực tế, các đối tượng tích hợp được triển khai bằng cách sử dụng gần như các cơ chế tương tự.Phần 38.3). Để giảm chi phí đó,JITkèo bóng đá cúp c2 có thể nội tuyến các phần của các hàm nhỏ vào các biểu thức bằng cách sử dụng chúng. Điều đó cho phép một tỷ lệ đáng kể của chi phí được tối ưu hóa.

32.1.3.Tối ưu hóa

LLVMcó hỗ trợ để tối ưu hóa mã được tạo. Một số tối ưu hóa đủ rẻ để được thực hiện bất cứ khi nàoJITđược sử dụng, trong khi những người khác chỉ có lợi cho các truy vấn chạy dài hơn. Nhìn thấyhttps: //llvm.org/docs/passes.html#transform-passesĐể biết thêm chi tiết về tối ưu hóa.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài kèo bóng đá cúp c2 không chính xác, không khớpMẫu nàyĐể báo cáo vấn đề tài kèo bóng đá cúp c2.