2009-03-09 34 views

Trả lời

6

Tối ưu hóa vi mô hầu như luôn là điều sai trái. Thậm chí không bắt đầu vào nó trừ khi chương trình chạy quá chậm, và bạn sử dụng một profiler để xác định chính xác vị trí các phần chậm.

Một khi bạn đã làm điều đó, lời khuyên của tôi là để xem về cải thiện mã và địa phương dữ liệu, vì nhớ cache gần như chắc chắn tồi tệ hơn so với hướng dẫn tối ưu.

Điều đó đang được thực hiện, trong trường hợp khá kỳ quặc mà bạn có thể sử dụng phương pháp dựa trên bài tập hoặc dựa trên so sánh, hãy thử cả hai và thời gian. Tối ưu hóa vi mô là một trò chơi số. Nếu các con số không đủ tốt, hãy tìm hiểu lý do tại sao, sau đó xác minh rằng những gì bạn đang thực sự hoạt động.

Vì vậy, ý của bạn là gì khi so sánh? Nhảy có điều kiện gây ra vấn đề cho bất kỳ bộ vi xử lý hiện đại mơ hồ nào, nhưng các bộ vi xử lý khác nhau làm những việc khác nhau và không đảm bảo rằng bất kỳ bộ xử lý nào sẽ làm chậm mọi thứ. Ngoài ra, nếu một trong hai nguyên nhân gây ra một bộ nhớ cache bỏ lỡ, đó có lẽ là một chậm hơn không có vấn đề gì.

Cuối cùng, các ngôn ngữ thường được biên dịch thành mã máy và những thứ đơn giản như so sánh và các bài tập thường sẽ được biên dịch giống nhau. Sự khác biệt lớn sẽ là loại CPU.

+0

Tôi không chủ động thực hiện tối ưu hóa vi mô, đây chỉ là một số sự tò mò mà tôi có sau khi xem một số phân loại từng phần rồi so sánh các thuật toán. – cmsjr

+0

OK, nhưng câu hỏi về những hoạt động nào nhanh hơn đã trở nên phức tạp hơn nhiều kể từ khi tôi bắt đầu trong lĩnh vực này. Các bộ vi xử lý hiện đại thực sự phức tạp và khó dự đoán. –

+0

trong khi câu trả lời được cung cấp là thực tế, nó tránh được câu hỏi hoàn toàn: | – Darioush

9

Bạn nghĩ sao?

Ở mức thấp nhất, một người đọc hai lần, người kia đọc và viết.

Nhưng tại sao bạn thực sự quan tâm? Bạn không nên quan tâm đến hiệu suất ở cấp độ này. Tối ưu hóa cho Big-O

+3

Bạn có thể quan tâm cần lưu ý rằng cuốn sách chủ yếu là về Big-O. Tại sao tôi nên quan tâm? Bởi vì tôi không biết. – cmsjr

+1

Tôi đồng ý rằng đó là một sự tối ưu vô lý, nhưng biết cách mỗi công trình không phải là vô giá trị. 1 từ tôi đến OP và trả lời này. –

+0

Pyro, cảm ơn vì cái nhìn sâu sắc, nếu không phải là giai điệu. – cmsjr

Các vấn đề liên quan