Определение 16.76. Команда profile-reset

(profile-reset)

Команда profile-info выводит в диалоговое окно системы всю собранную профилирующую информацию о работе конструкторов или функций, опре­деленных пользователем. Собранная информация отображается в таблице из шести столбцов. Описание содержания всех столбцов приведено ниже.

Ø Имя профилируемого конструктора или определенной пользователем функции.

Ø Количество вызовов профилируемого конструктора или определенной пользователем функции.

Ø Продолжительность выполнения конструктора или определенной поль­зователем функции.

Ø Процент времени, потраченного на выполнение конструктора или опре­деленной пользователем функции, относительно общего времени профи­лирования,

Ø Продолжительность выполнения конструктора или определенной поль­зователем функции и выполнения всех внутренних вызовов конструкто­ров или функций.

Ø Процент времени, потраченного на выполнение конструктора или опре­деленной пользователем функции и выполнения всех внутренних вызо­вов конструкторов или функций, относительно общего времени профи­лирования.

Определение 16.77. Команда profile-info

(profile-info)

Команда profile предназначена для включения/выключения профилирова­ния конструкторов или определенных пользователем функций.

Определение 16.78. Команда profile

(profile constructs | user-functions | off)

При профилировании конструкторов система замеряет время выполнения определенных пользователем и родовых функций, а также обработчиков сообщений, вызванных из правой части правил. При профилировании функций замеряется время выполнения системных и определенных поль­зователем функций. Эти режимы не совместимы и устанавливаются с по­мощью ключей constructs и user-function соответственно. Для выключения режима профилирования используется ключ off.

Для примера профилирования очистите систему CLIPS и добавьте следую­щие определения:

Пример 16.9. Необходимые определения

(clear)

(deffacts start (fact 1))

(deffunction function-1 (?x)

(bind?y 1)

(loop-for-count (*?x 10)

(bind?y (+?y?x))))

(defrule rule-1

?f <- (fact?x&: (<?x 100))

=>

(function-1?x)

(retract?f)

(assert (fact (+?x 1))))

Для профилирования конструктора правил используйте следующую после­довательность команд:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: