2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Скорость вычислений Mathematica
Сообщение19.07.2011, 23:46 
Начну с простого примера.
Код:
Timing[Table[Timing[Log[i*10^(-20)]], {i, 1, 3000}]]
Почему во всех точках скорость расчета порядка $10^{-17}$, а в какой-то одной(причем различной при нескольких запусках) 0.016?

 
 
 
 Re: Скорость вычислений Mathematica
Сообщение19.07.2011, 23:55 
Наверно, из-за того, что на Виндах дискретность стандартного таймера порядка 16 миллисекунд.

 
 
 
 Re: Скорость вычислений Mathematica
Сообщение20.07.2011, 00:28 
А поподробнее можно? Т.е. считает он во всех точках одинаково?

 
 
 
 Re: Скорость вычислений Mathematica
Сообщение20.07.2011, 06:01 
Можно определить время точнее, но простейшая функция C возвращает время в тиках, коих в секунде фиксированное число (на PC часто - 60). Если очень часто опрашивать время, то оно будет неизменно, неизменно, неизменно, а потом - раз, и на 16 миллисекунд увеличилось.

 
 
 
 Re: Скорость вычислений Mathematica
Сообщение20.07.2011, 07:18 
Спасибо за ответы. Т.е. скорость расчетов в принципе распределена равномерно?? И 10^(-17) совсем не точное время, а как переходит через 0.016, показывает. Так?

 
 
 
 Re: Скорость вычислений Mathematica
Сообщение20.07.2011, 11:33 
Видимо, $10^{-17}$ это погрешность типа лонг. А такое время на много порядков меньше интервала для одного такта процессора :-)

 
 
 
 Re: Скорость вычислений Mathematica
Сообщение20.07.2011, 15:10 
Андрей123 в сообщении #469763 писал(а):
Спасибо за ответы. Т.е. скорость расчетов в принципе распределена равномерно?? И 10^(-17) совсем не точное время, а как переходит через 0.016, показывает. Так?
Возможно, $10^{-17}$ секунды добавляют к оказавшимся нулевыми интервалам времени, чтобы не было деления на ноль. Обычно в этом случае получается ровно ноль. Или это погрешность представления чисел в виде чисел с плавающей точкой.

 
 
 [ Сообщений: 7 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group