Print

Print


[yakut01] ~/myhps/release $ /afs/slac/package/java/amd64_linux26/jdk1.6/bin/java -Xmx2048m -cp hps-java/target/hps-java-1.2-SNAPSHOT-bin.jar 
org.lcsim.hps.evio.TestRunEvioToLcio -x hps-java/src/main/resources/org/lcsim/hps/steering/TestRunOfflineRecon-o1.lcsim 
~/hps3/data/testrun/runs/evio/hps_001349.evio.0 -DoutputFile=recon.slcio -d 
HPS-TestRun-v3
No input files in XML file.
No input files provided by XML or command line.  Dry run will be enabled.
Loading the SVT bad channels for run -1
Opening file /u/ey/homer/hps3/data/testrun/runs/evio/hps_001349.evio.0
Exception in thread "main" java.lang.RuntimeException: java.io.IOException: Map 
failed
         at org.lcsim.hps.evio.TestRunEvioToLcio.main(TestRunEvioToLcio.java:185)
Caused by: java.io.IOException: Map failed
         at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:748)
         at org.jlab.coda.jevio.EvioReader.mapFile(EvioReader.java:323)
         at org.jlab.coda.jevio.EvioReader.<init>(EvioReader.java:178)
         at org.lcsim.hps.evio.TestRunEvioToLcio.main(TestRunEvioToLcio.java:183)
Caused by: java.lang.OutOfMemoryError: Map failed
         at sun.nio.ch.FileChannelImpl.map0(Native Method)
         at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:745)
         ... 3 more

Note!:
[yakut01] ~/myhps/release $ file 
/afs/slac/package/java/amd64_linux26/jdk1.6/bin/java
/afs/slac/package/java/amd64_linux26/jdk1.6/bin/java: ELF 32-bit LSB executable, 
Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses 
shared libs), not stripped


On Fri, 9 Nov 2012, Sho Uemura wrote:

> 'kay, the problem is that EvioReader (a JEVIO class) reads EVIO files by 
> mapping the entire file into a single byte buffer.
>
> If you're running a 32-bit JVM ("java -version" will tell you) you apparently 
> can't memory-map more than 1.3 GB or so at a time. Run 1351 is barely under 
> the line; the files that are failing are 2 GB.
>
> Heap size is (mostly) unrelated to this problem. Allocating more heap will 
> not solve it.
>
> I couldn't reproduce because I'm running 64-bit. If the two of you can 
> confirm what JVM version you're running?
>
>
> Fixes:
>
> For now, run a 64-bit JVM. All the SLAC public machines are 64-bit at this 
> point.
>
> If you're on 32-bit, don't run on really big EVIO files. If many people are 
> running into this issue, we could break up the EVIO files, or translate to 
> LCIO - the original EVIO files would of course be kept.
>
> Long-term, EvioReader needs to be rewritten so it does the right thing and 
> either reads sequentially or maps only chunks of the file at a time. We can 
> get the CODA people to do this, since it is legitimately a JEVIO bug and not 
> ours.
>
> On Fri, 9 Nov 2012, Graham, Mathew Thomas wrote:
>
>>> 
>>> The error seems to be coming up when the EVIO file is loaded. Does the
>>> same error show up if you try to run on a smaller EVIO file?
>> 
>> Ah?when I run on a smaller file it does work.
>> 
>> 
>> ########################################################################
>> Use REPLY-ALL to reply to list
>> 
>> To unsubscribe from the HPS-SOFTWARE list, click the following link:
>> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1
>> 
>

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the HPS-SOFTWARE list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1