A non-transitory tangible computer-readable storage medium storing a program for causing a computer to execute a method of controlling an information processing apparatus,
- wherein the method comprises:
- controlling execution of update processing for updating predetermined data of the information processing apparatus according to satisfaction of a predetermined condition;
- controlling, based on a timing at which the predetermined condition is satisfied and a start time of predetermined processing which is periodically executed by the information processing apparatus, whether to execute the update processing without waiting for completion of the predetermined processing or execute the update processing after the completion of the predetermined processing;
- calculating a completion predicted time of the update processing based on the timing at which the predetermined condition is satisfied,
- wherein in a case where the completion predicted time of the update processing is earlier than the start time of the predetermined processing which is periodically executed by the information processing apparatus, the update processing is executed without waiting for the completion of the predetermined processing, and in a case where the completion predicted time of the update processing is not earlier than the start time of the predetermined processing, the update processing is executed after the completion of the predetermined processing;
- performing a first calculation to calculate a download speed based on a time period required to perform processing for receiving predetermined data from a server that provides update data used for the update processing;
- and
- performing a second calculation to calculate a writing speed based on a time period required to perform processing for writing the predetermined data into a storage unit of the information processing apparatus,
- wherein the completion predicted time of the update processing is calculated based on the download speed, the writing speed, and a data size of the update data.