On 15/04/15 14:49, Sören Brunk wrote:
Thanks for your suggestions. I got TDB running now. It only required a
small change in ProcessUtils to get the process id. This adds a
dependency on the Android sdk though, but it is possible to add a maven
dependency on the sdk with "provided" scope so I think it's feasible.
According to the log TDB runs in direct mode on my test device as well
as x68_64 emulator so perhaps detection doesn't work on right on Android
yet. What would be a good way to test performance?
I think a JIRA is more appropriate for further discussion so I created
one: https://issues.apache.org/jira/browse/JENA-914
Cheers,
Sören
Hi Sören,
Detection is "unsubtle" - it looks for "64" in system property
"java.vm.info" (see SystemTDB.determineIf64Bit()). Adding a "isAndroid"
flag would be good - what's the best way to detect Android that does not
rely on Android code?
It might be better to run in direct mode on Android anyway as mapped
mode can end up competing for memory resource from other processes while
direct is more controllable. It's a server-style approach where any and
all available free RAM is used for the database.
In terms of performance, for smallish datasets, or at least
small-RAM-footprint, the performance might be similar. Mapped mode (on
Linux) comes into it's own when queries are repeatedly doing large index
access (e.g. heavy FILTERing).
Andy