У меня есть программа, которая читает длинный список слов из текстового файла с перенаправлением командной строки. Нет файловых потоков.
Это берет данные в использовании getline(cin, string)
и читает его в вектор. Моя программа затем обрабатывает данные. Он также использует динамическую память (не уверен, что этот факт имеет значение).
Почему я получаю эту ошибку:
Warning: Your program used more system time (0.001 sec) than user time (0.000 sec).
This may be due to excessive I/O, overly frequent time measurement
(via getrusage for example), or unnecessary system calls.
Ваш код читает и пишет файлы, что приводит к open()
, read()
, а также write()
системные звонки среди других. «Пользовательское» и «системное» время — это процессорное время, затрачиваемое в пространстве пользователя и системе / пространстве ядра соответственно. Ядро также может использовать несколько процессоров, так что наличие «большего времени процессора», чем «реального времени», не является чем-то странным.
Понятия не имею, какой инструмент профилирования вы используете, чтобы сказать вам об этом, поскольку Google ничего не придумала, но этот инструмент неправильный. Здесь нет проблем.
Других решений пока нет …