Обсуждение: cnfify() performance

Поиск
Список
Период
Сортировка

cnfify() performance

От
"Hiroshi Inoue"
Дата:
Hi all,

A question about TODO item  * Fix memory exhaustion when using many OR's

pull_ors() and pull_ands() are called while processing 
cnfify() and both call copyObject().           ^^^^^^^^^^^^^^
For example in pull_ors()
return (pull_ors(nconc(copyObject((Node *) args),        copyObject((Node *) lnext(orlist)))));

copyObject() seems too heavy
Is copyObject() necessary in this case ?
Couldn't we change as below ?
return (pull_ors(nconc(listCopy(args),        listCopy( lnext(orlist)))));    

I'm not sure it's possible or not ,because I don't understand
cnfify() and other related stuff.

If it's possible,it would improve cnfify()'s performance and 
memory consumption in many OR's cases ,though it would
never fix TODO item.

Comments ?

Regards.

Hiroshi Inoue
Inoue@tpf.co.jp