On Mon, Jul 16, 2012 at 9:17 PM, Ben Smith-Mannschott <bsmith.o...@gmail.com> wrote: > On Mon, Jul 16, 2012 at 5:21 PM, Raju Bitter <rajubit...@googlemail.com> > wrote: >> I've checked out the Clojure source code, and build the JAR using the >> Ant command. I'm seeing a strange effect, where the compile time on my >> normal hard disk takes almost 4 min (with most the time being spent in >> the "compile-clojure" task, and doing the same build process on my SSD >> taking 30-35s. >> >> I've never seen any similar behavior on my machine, normally build >> processes take 10% more when they run on the HDD vs. the SSD. Has >> anyone else experienced the same effect? How long does it take to run >> the "ant build" on your machines? >> >> Thanks, >> Raju > > I believe this is related to an oddity of the clojure compiler: it > syncs every time it writes a class file to disk. This appears to be > necessary for reasons that escape me. (One might naively assume that a > simple flush() would be enough; but that was not so when I stumbled > across this myself a year or so ago.) > > In any event, it does not surprise me in the least that a storm of > sync calls would cause a mechanical hard disk to grovel a bit, while > presenting
(new keyboard, sorry) ... while presenting little difficulty for an SSD. static public void writeClassFile(String internalName, byte[] bytecode) throws IOException{ ... skip a bit, brother ... try { cfs.write(bytecode); cfs.flush(); cfs.getFD().sync(); // <------ } finally { cfs.close(); } } // ben -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en