Ứng dụng của chúng tôi mất nhiều thời gian hơn để khởi động sau khi khởi động lại (khởi động nguội) hơn nếu nó đã được mở một lần (khởi động ấm).So sánh khởi động nguội bắt đầu ấm
Hầu hết (nếu không phải tất cả) sự khác biệt dường như đến từ việc tải các tệp DLL, khi các tệp DLL nằm trong các trang bộ nhớ đệm mà chúng tải nhanh hơn nhiều. Chúng tôi đã thử sử dụng ClearMem để mô phỏng khởi động lại (vì tốn ít thời gian hơn nhiều so với thực tế khởi động lại) và có kết quả hỗn hợp, trên một số máy dường như mô phỏng khởi động lại rất nhất quán và trong một số không.
Tóm lại câu hỏi của tôi là:
- Bạn đã trải qua sự khác biệt về thời gian khởi động giữa bắt đầu lạnh và ấm áp?
- Bạn đã làm cách nào với sự khác biệt như vậy?
- Bạn có biết cách mô phỏng một cách đáng tin cậy để khởi động lại không?
Edit:
Làm rõ cho ý kiến:
- Ứng dụng này chủ yếu có nguồn gốc C++ với một số NET (NET lắp ráp đầu tiên đó là nạp trả tiền cho CLR).
- Chúng tôi đang tìm cách cải thiện thời gian tải, rõ ràng là chúng tôi đã chia sẻ hồ sơ của chúng tôi và cải thiện các điểm nóng trong mã của chúng tôi.
Điều tôi quên đề cập đến là chúng tôi đã cải thiện một số bằng cách căn cứ vào tất cả các tệp nhị phân của chúng tôi để trình tải không phải thực hiện nó khi tải.
Motti, bạn có ý tưởng mới về mô phỏng khởi động lại không? Tôi đang tìm kiếm cách như vậy cho ứng dụng rất lớn của chúng tôi là tốt nhưng không tìm thấy một cách chắc chắn –
@Dbger, xin lỗi tôi đã không thực hiện bất kỳ tiến bộ bổ sung về điều này, tôi chuyển sang các vấn đề khác nhau. Chúc may mắn. – Motti