Tôi đọc here mà Intel đã giới thiệu SSE 4.2 instructions
để tăng tốc xử lý chuỗi.Gcc có sử dụng các chỉ lệnh SSE 4.2 của Intel để xử lý văn bản nếu có không?
Trích dẫn từ bài viết:
Các SSE 4.2 hướng dẫn thiết lập, đầu tiên thực hiện trong Core i7 của Intel, cung cấp chuỗi và hướng dẫn xử lý văn bản (STTNI) mà sử dụng hoạt động SIMD cho dữ liệu ký tự chế biến. Mặc dù ban đầu được hình thành để tăng tốc chuỗi, văn bản và xử lý XML, các khả năng mới mạnh mẽ của các hướng dẫn này hữu ích bên ngoài các tên miền này và đáng xem xét lại tìm kiếm và công nhận các giai đoạn của nhiều ứng dụng sử dụng STTNI để cải thiện hiệu suất
- Gcc có sử dụng các hướng dẫn này nếu chúng có sẵn không?
- Nếu có, phiên bản nào?
- Nếu không, có bất kỳ thư viện nguồn mở nào cung cấp tính năng này không?
tôi nghi ngờ rằng GCC sẽ có thể nhận ra một nhiệm vụ cụ thể khi đang xử lý thử nghiệm và sử dụng chúng tự động. Nhưng tôi sẽ không ngạc nhiên nếu các hàm như 'strcpy()' được thực hiện bằng cách sử dụng trình biên dịch SSE4.2. – Mysticial
@Mysticial Tôi đoán tôi đã đề cập đến 'strcpy' et al; nhưng quan trọng hơn là 'atoi' vv, và C++ 11 tương đương' std :: stoi' etc –
xem http://stackoverflow.com/questions/7919304/gcc-sse-code-optimization Bạn cần nói với gcc. Thư viện đã được biên soạn, do đó, chỉ có mã của bạn sẽ bị ảnh hưởng, trừ khi bạn biên dịch lại các thư viện. – imel96