Consulted programs are an order of magnitude slower and consume an order of magnitude more space than compiled programs. When I debug a large program, I usually run it in a mixed mode: those predicates (or files) which I really want to trace are consulted but all other predicates are compiled for execution.