Volkan Yazıcı created DMAP-107:
----------------------------------
Summary: Performance optimizations for DeviceMapClient.classify()
Key: DMAP-107
URL: https://issues.apache.org/jira/browse/DMAP-107
Project: DeviceMap
Issue Type: Improvement
Components: Java Client
Affects Versions: 1.1.0 Java
Reporter: Volkan Yazıcı
Assignee: Reza Naghibi
This patch removes redundant {{DeviceType}} checks and User-Agent string
normalization calls. Performance gain is more than 2x. Check out the
devicemap-client-benchmark (introduced in issue DMAP-106) output:
{code}
$ export userAgentFile=/path/to/user-agents.txt
$ wc -l $userAgentFile
195325
$ java \
-jar
devicemap/java/classifier-benchmark/target/devicemap-client-benchmark.jar \
-jvmArgsAppend "-server -XX:+TieredCompilation -XX:+AggressiveOpts
-Xms1024m -Xmx4096m -DuserAgentFile=$userAgentFile" \
-wi 5 -i 5 -bm avgt -tu ms -f 3 \
".*DeviceMapClientBenchmark.*"
# Using the most recent trunk.
Result: 12079.408 ±(99.9%) 1240.628 ms/op [Average]
Statistics: (min, avg, max) = (11232.424, 12079.408, 16011.000), stdev =
1160.484
Confidence interval (99.9%): [10838.781, 13320.036]
# Using the enhanced classify().
Result: 5505.355 ±(99.9%) 441.748 ms/op [Average]
Statistics: (min, avg, max) = (5060.269, 5505.355, 6508.699), stdev = 413.211
Confidence interval (99.9%): [5063.607, 5947.103]
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)