From 2e25fe1e64f487fd91ff6f636bf3249b761ffcdc Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 13 Jan 2021 19:34:11 +0100 Subject: Use a fixed-size reader stack This improves performance, and makes the reader more suitable for embedded or network-facing applications, at the cost of requiring the user to specify a maximum stack size. --- doc/serdi.1 | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'doc') diff --git a/doc/serdi.1 b/doc/serdi.1 index 8747be92..3ae42ea0 100644 --- a/doc/serdi.1 +++ b/doc/serdi.1 @@ -9,6 +9,7 @@ .Op Fl abefhlqv .Op Fl c Ar prefix .Op Fl i Ar syntax +.Op Fl k Ar bytes .Op Fl o Ar syntax .Op Fl p Ar prefix .Op Fl r Ar root @@ -68,6 +69,14 @@ Case is ignored, valid values are: .Dq TriG , .Dq Turtle . .Pp +.It Fl k Ar bytes +Parser stack size. +For performance reasons, parsing is performed with a fixed-size stack. +By default, the stack is one page (4096 bytes), which should be sufficient for parsing most documents. +This option can be used to increase or decrease the amount of memory available for parsing. +It must be large enough to fit one statement, with some extra space for internal records. +Something around twice the length of the longest statement in text (as if it were written in NTriples or NQuads) is a reasonable value. +.Pp .It Fl l Lax (non-strict) parsing. If this is enabled, recoverable syntax errors will print a warning, but parsing will proceed starting at the next statement if possible. -- cgit v1.2.1