Advising Prolog processor to utilize huge-pages
Asked Answered
D

1

16

Are there any Prolog implementations which support utilizing huge-pages (2MB/4MB per memory page) instead of the vanilla 4Kb memory pages.

Ideally, I would like to declare to the interpreter/compiler/run-time that it's okay to use X huge-pages for various heaps/stacks/scratchpad-memory for some particular application.

Of course, not all applications could benefit from this, but I am sure that there are more than a few that would. Megabytes are the new kilobytes, after all:)

Doggery answered 27/3, 2015 at 15:42 Comment(8)
The page size will be determined by the operating system; not the prolog implementation running on it.Subscript
No. For info regarding the subject have a look at wiki.debian.org/HugepagesDoggery
Huh, I seemed to recall Arity/Prolog allowed for larger page sizes than 4k, but a quick search has turned up with nothing. Cool question.Michigan
For example this: eclipseclp.org/doc/userman/umsroot152.html?Houdon
@coredump. Thanks for that link! How does that information relate to huge-pages? (Other pages of other Prolog processors have quite some switches related to "memory use" in general but not wrt huge-pages, e.g., sicstus.sics.se/sicstus/docs/latest4/html/sicstus.html/…)Doggery
@Doggery Oh, now I understand the question. This was not really related, sorry.Houdon
@coredump. No harm done! It was related, but not as spot-on as I would have wished for...Doggery
@coredump. How about taking a handful of benchmarks and testing them with JekeJeke Prolog on the JVM (with and without huge-pages enabled and report the empirical runtime measurements as an answer here? Bounty of 200 is waiting until Saturday at most!Doggery
D
6

Since some Prologs runs on the Java JVM, and since some Java JVMs have a flag for that, I guess the answer is yes. See also:

Java Support for Large Memory Pages
http://www.oracle.com/technetwork/java/javase/tech/largememory-jsp-137182.html

There are a couple of Prologs running on the Java JVM:

Comparison of Prolog implementations
https://en.wikipedia.org/wiki/Comparison_of_Prolog_implementations

Bye

Disgruntle answered 18/8, 2015 at 9:3 Comment(2)
Did you do some performance tests with JekeJeke on some JVM, one time with hugepages turned off, another time with hugepages turn on?Doggery
I don't want to directly compare performance measurements of JekeJeke and other Prolog processors which do not run on the JVM)... I am curious if hugepages are beneficial, and if so for which kind of benchmark.Doggery

© 2022 - 2024 — McMap. All rights reserved.