-
Notifications
You must be signed in to change notification settings - Fork 134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Meaning of time/1, extra choice point #378
Comments
…istic. This works as soon as mthom#732 is merged, since then maplist/N and foldl/N are deterministic in the required cases. This also resolves the extra choicepoint of time/1 (see mthom#378). Many thanks to @notoria for implementing better indexing in mthom#732, which allowed me to find this opportunity for improvement!
On Linux, the following happens:
Sleeping time isn't measured. What is |
The elapsed time is referred to as the "wall time". |
And what does the second time mean? |
This addresses mthom#378.
This addresses mthom#378.
This addresses mthom#378.
This addresses mthom#378.
This addresses mthom#378.
This addresses mthom#378.
This addresses mthom#378.
This addresses mthom#378.
After ten thousand attempts, I think I resolved both issues! Nested invocations of ?- time(time(true)). % CPU time: 0.000 seconds % CPU time: 0.000 seconds true. ?- time(time(true)). unexpected loop Once #1123 is solved, this should also work with the present implementation of |
There should not be a big difference between these two queries, as time/1 only measures
(true;true)
. However, it seems that time/1 also includes the time spent in predicates thereafter and the top level loop which takes a lot with longer lists.Further, time/1 adds an extra CP which changes performance substantially by retaining data that would otherwise be collected (in the long run, indeed)
The text was updated successfully, but these errors were encountered: