Hoàn cảnh của tôi
Tôi đang viết một bài báo trình bày một mô-đun phần mềm tôi đã phát triển và tôi muốn so sánh thời gian chạy của nó với các mô-đun khác cho cùng một nhiệm vụ. Tôi nhận thức được những hạn chế của các thử nghiệm thời gian chạy , nhưng xin vui lòng giả sử rằng không có cách nào xung quanh nó trong trường hợp của tôi. (Tôi có thể và suy luận một số tính chất trên lý thuyết, nhưng nó không đủ cho tất cả mọi thứ.)
Các kịch bản cụ thể tôi muốn sử dụng để đo điểm chuẩn có hai tham số: độ phức tạp của vấn đề và hạt giống ngẫu nhiên r xác định vấn đề chi tiết. Chủ yếu tôi muốn thể hiện sự phụ thuộc vào n . Theo nghiên cứu sơ bộ và lý thuyết, ảnh hưởng của r đến thời gian chạy là nhỏ hoặc không đáng kể. Một nhiệm vụ duy nhất mất tối đa mười phút để hoàn thành.
Câu hỏi thực tế
Tôi đang tìm kiếm một số thủ tục thường được chấp nhận hoặc được công bố để thực hiện các thí nghiệm như vậy hoặc ít nhất là một danh sách các cạm bẫy phổ biến (được công bố lý tưởng).
Những gì tôi tìm thấy cho đến nay
Không có gì. Các tìm kiếm trên Internet cho thấy tất cả các loại kết quả không liên quan, nhưng sau đó tôi có thể không sử dụng thuật ngữ đúng. Bao gồm từ khóa tối thiểu, mà tôi biết là một tiêu chuẩn tốt (xem bên dưới), cũng không giúp được gì.
Làm thế nào tôi sẽ làm điều đó
Chạy tất cả các thử nghiệm trên cùng một máy với phần mềm có khả năng can thiệp như GUI bị vô hiệu hóa càng nhiều càng tốt.
Chủ đề tất cả các mô-đun cho cùng một lựa chọn các kịch bản, nghĩa là cùng và r .
Đối với mỗi kịch bản, kiểm tra các mô-đun khác nhau trực tiếp với nhau theo thứ tự ngẫu nhiên. Nói cách khác, vòng lặp trên các mô-đun khác nhau là vòng lặp trong cùng. Điều này sẽ tránh sai lệch trên các mô-đun khác nhau do dao động chậm của hiệu suất của máy (ví dụ: do thay đổi nhiệt độ). Thứ tự ngẫu nhiên phải tránh sai lệch thông qua các hiệu ứng như bộ đệm hoặc một mô-đun luôn được kiểm tra sau cùng một mô-đun.