Posted by Аркадий Водяник on July 14, 1999 at 21:26:28:
In Reply to: Аркадий, прокоментируйте, если не затруднит. posted by Александр.Киев. on July 14, 1999 at 04:27:08:
Конечно, для таких вещей, как просто "прицепить" файл-коэффициент к листу дерева,
давно надо бы иметь в языке что-нибудь вроде "run file", и так, чтобы эта конструкция
сама по себе времени не отнимала. Но пока ее нет, лучше использовать просто "X X F".
Я провел такие измерения в 3.04 (почему не в 2.9H? выполнение проводок в этих версиях
реализовано одинаково, но с Профилером в 3.04 легче экспериментировать):
Eдинственный файл 199907.f3p, в нем - 843750 операций.
Все операции одинаковы и содержат одно слово "операция".
Этой "операции" соответствовали в трех разных опытах такие листы дерева:
1) X X F (здесь X - счет первого уровня; время выполнения проводок: 6288 мс, т.e. 7.5 мкс/раз)2) T =1 F (T - субсчет; время выполнения присваиваний первому параметру: 46889 мс, т.e. 56 мкс/раз )
3) T T F (T - субсчет; время выполнения проводок: 9183 mc, т.е. 11 мкс/раз)
Почему я создал большой файл, a не упрятал все проводки в цикл в файле-коэффициенте -
так как это сделал Александр? Дело в том, что "внешние" проводки выполняются быстрее
внутренних, они, так сказать, более "прекомпилированы". А для того, чтобы запустить
файл-коэффициент, нужна именно "внешняя проводка".
Важное замечание, oтносящееся к теме сообщения: механизм экстрапараметров работает
сейчас значительно быстрее обычных параметров.