adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 4.00.1 http://bit.ly/UHeZyT | http://www.ocaml-lang.org | Public logs at http://tunes.org/~nef/logs/ocaml/
Neros_ has quit [Remote host closed the connection]
mattrepl has joined #ocaml
destrius has joined #ocaml
sepp2k has joined #ocaml
madroach has quit [Ping timeout: 244 seconds]
madroach has joined #ocaml
cdidd has joined #ocaml
tac-tics has joined #ocaml
pkrnj has joined #ocaml
pkrnj has quit [Client Quit]
metadave has quit [Remote host closed the connection]
pkrnj has joined #ocaml
tac-tics has quit [Ping timeout: 245 seconds]
mattrepl has quit [Quit: mattrepl]
pkrnj has quit [Quit: Textual IRC Client: www.textualapp.com]
myx has quit [Ping timeout: 252 seconds]
stj has joined #ocaml
<stj> I'm intrigued by the piece of code in OCaml presented here: http://metamatix.org/~ocaml/price-of-abstraction.html (first example, inside function iters1 there is recursive function aux)
<stj> since the float arguments x and y are boxed, this is noticeably slower than java and c++... do you perhaps see a way to do this computation faster (possibly in an uglier way) by avoiding boxing?
<stj> if that is possible at all
<stj> perhaps using a while loop and references would do it, but that defeats the purpose since that way we box values inside ref :)
mye_ has joined #ocaml
mye has quit [Ping timeout: 246 seconds]
mye_ is now known as mye
<mbac> stj, float arrays?
Submarine has joined #ocaml
Submarine has quit [Changing host]
Submarine has joined #ocaml
Snark has joined #ocaml
justdit has joined #ocaml
jewel has joined #ocaml
sepp2k has quit [Remote host closed the connection]
<orbitz> stj: the floats are also smaller in Ocaml too
Cyanure has joined #ocaml
<orbitz> stj: I just ran the C++ and Ocaml versions lcoally. ocaml time is ~2.6s, C++ time is ~1.4s
<orbitz> oh andthis guy is such a cheater, he uses inline asm in the C++ code
<orbitz> oh andcount reference too, not very ocaml
jewel has quit [Ping timeout: 252 seconds]
ulfdoz has joined #ocaml
mye has quit [Quit: mye]
Cyanure has quit [Remote host closed the connection]
thomasga has joined #ocaml
ulfdoz has quit [Ping timeout: 252 seconds]
hkBst has joined #ocaml
Cyanure has joined #ocaml
hkBst has quit [Ping timeout: 246 seconds]
groleo has joined #ocaml
hkBst has joined #ocaml
hkBst has quit [Changing host]
hkBst has joined #ocaml
djcoin has joined #ocaml
caligula__ has quit [*.net *.split]
sgnb has quit [*.net *.split]
maufred_ has quit [*.net *.split]
Derander has quit [*.net *.split]
cross has quit [*.net *.split]
yroeht has quit [*.net *.split]
Asmadeus has quit [*.net *.split]
Asmadeus has joined #ocaml
caligula__ has joined #ocaml
cross has joined #ocaml
maufred has joined #ocaml
sgnb has joined #ocaml
Derander has joined #ocaml
sgnb is now known as Guest48430
yroeht has joined #ocaml
Submarine has quit [Ping timeout: 256 seconds]
Guest48430 is now known as sgnb`
sgnb` is now known as sgnb
chambart has joined #ocaml
mika4 has joined #ocaml
lolcathost has joined #ocaml
larhat has quit [Quit: Leaving.]
ontologiae has joined #ocaml
cago has joined #ocaml
ontologi1e has joined #ocaml
eikke has joined #ocaml
gasche has joined #ocaml
beckerb has joined #ocaml
Submarine has joined #ocaml
Submarine has quit [Changing host]
Submarine has joined #ocaml
Kakadu has joined #ocaml
Submarine has quit [Quit: Leaving]
Yoric has joined #ocaml
Xizor has joined #ocaml
larhat has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
destrius has quit [Quit: Leaving.]
ikaros has joined #ocaml
darinm has joined #ocaml
eikke has quit [Ping timeout: 256 seconds]
wagle_ has joined #ocaml
wagle has quit [Ping timeout: 260 seconds]
darinm has left #ocaml []
mika4 has quit [Quit: Leaving.]
<stj> mbac: arrays don't help, they are slow since we need to load stuff from it
<stj> orbitz: inline asm is just for floating point precision, that doesn't matter... also count reference is irrelevant since that's not the bottleneck of the program
ontologiae has quit [Quit: leaving]
ontologi1e has quit [Quit: leaving]
ontologiae has joined #ocaml
ontologiae has quit [Client Quit]
ontologiae has joined #ocaml
chambart has joined #ocaml
<stj> I'll repeat the question since long time has passed: I wonder if it's possible to avoid boxing in this simple function "aux" ... http://pastebin.com/MRfjXiCm
<stj> I don't really see the need for it, and it would speed up the code a lot
<olasd> stj: put x and y in a record
hkBst has quit [Ping timeout: 246 seconds]
hkBst has joined #ocaml
fraggle_ has joined #ocaml
<stj> olasd: if I make a record, then it itself is boxed so it has to be unboxed every time... I gained no speed up this way - it's still the same
andreypopp has joined #ocaml
<orbitz> stj: did you show that or just assuming?
<Kakadu> AFAIR there is optimisation when record of floats is compiled like array of floats
<stj> orbitz: here it is, no speed up: http://pastebin.com/fDm6LC0L
<orbitz> I think that is true for a record of any common type
<orbitz> stj: The mailing list will proabbly get you more knowledgable people
<stj> another try, 0.7 sec slower: http://pastebin.com/fnQ3HzgL
mika4 has joined #ocaml
andreypopp has quit [Quit: sleep]
<gasche> stj: I have a very imperative version that does not box
<gasche> but I'm quite sure the record version should be faster, despite it does do some boxing
<gasche> (there is a paren missing at the obvious beginning of comment)
<gasche> hm
<gasche> I mean that the record version should be faster *than the naive version*
andreypopp has joined #ocaml
<gasche> hm
<gasche> could even avoid the boxing with mutable arrays, wait
Cyanure has quit [Remote host closed the connection]
Cyanure has joined #ocaml
Cyanure has quit [Remote host closed the connection]
Cyanure has joined #ocaml
<stj> gasche: nice, but the first version runs for 8.4 sec, second 4.5 sec (the original is 3.5 sec)
<stj> this avoids buxing but introduces dereferencing
Xizor has quit [Ping timeout: 260 seconds]
hkBst_ has joined #ocaml
hkBst has quit [Ping timeout: 246 seconds]
paolooo has joined #ocaml
<gasche> stj: indeed; plus mutations hit the GC write barrier
<gasche> stj: on my machine
<gasche> iters1 runs in 2.26s (N=300_000_000)
<gasche> iters2 (or iters2_mut, same perf) in 1.88s
<gasche> iters6 in 2.43
<gasche> however
<gasche> using the "more_unboxing" SVN branch of Alain Frisch
<gasche> iters1 starts having exactly the performances of iter2
hkBst_ has quit [Ping timeout: 264 seconds]
hkBst__ has joined #ocaml
<gasche> which is what we want: nice-looking code with good performances
<gasche> so my advice would be to send Alain an email with your code example and thanks :)
eikke has joined #ocaml
<orbitz> gasche: cool!
UncleVasya has joined #ocaml
justdit has quit [Ping timeout: 252 seconds]
ontologiae has quit [Ping timeout: 252 seconds]
stj has quit [Ping timeout: 245 seconds]
ontologiae has joined #ocaml
mattrepl has joined #ocaml
bobry_ has quit [Ping timeout: 240 seconds]
teamon has quit [Read error: Operation timed out]
teamon has joined #ocaml
gnuvince has quit [Ping timeout: 252 seconds]
sgnb` has joined #ocaml
TaXules has quit [Ping timeout: 252 seconds]
sgnb is now known as Guest1001
sgnb` is now known as sgnb
Guest1001 has quit [Ping timeout: 246 seconds]
BiDOrD_ has joined #ocaml
TaXules has joined #ocaml
BiDOrD has quit [Ping timeout: 264 seconds]
ontologiae has quit [Ping timeout: 244 seconds]
andreypopp has quit [Quit: sleep]
myx has joined #ocaml
smondet has joined #ocaml
justdit has joined #ocaml
mattrepl has quit [Quit: mattrepl]
cago has quit [Quit: Leaving.]
cago has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
justdit has joined #ocaml
ontologiae has joined #ocaml
<eikke> anyone ever worked with the TravisCI people to get 'native' OCaml support?
cago has left #ocaml []
cago has joined #ocaml
justdit_ has joined #ocaml
<avsm> eikke: on my list, but i figured we should have a better story for what the recommend build system is
<avsm> eikke: we seem to be converging on oasis, so perhaps we should get in touch now
andreypopp has joined #ocaml
<eikke> I was rather thinking having opam installed by default would be nice ;)
<eikke> trying to get Arakoon to build/test on Travis now
<eikke> scripts to install/init opam and all deps are in place
justdit has quit [Ping timeout: 250 seconds]
<eikke> toughest part now is getting the stuff to work on x86, we always assumed an x86_64 target :-P
justdit_ has quit [Read error: Connection reset by peer]
justdit has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
PM has quit [Ping timeout: 246 seconds]
fraggle_laptop has quit [Remote host closed the connection]
groleo has quit [Quit: Leaving.]
justdit has joined #ocaml
mye has joined #ocaml
mattrepl has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
hkBst__ has quit [Remote host closed the connection]
hkBst__ has joined #ocaml
justdit has joined #ocaml
fraggle_ has quit [Ping timeout: 260 seconds]
fraggle_ has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
justdit has joined #ocaml
mattrepl has quit [Ping timeout: 255 seconds]
justdit has quit [Ping timeout: 244 seconds]
mattrepl has joined #ocaml
fraggle_ has quit [Ping timeout: 250 seconds]
lolcathost has quit [Ping timeout: 255 seconds]
fraggle_ has joined #ocaml
lolcathost has joined #ocaml
lolcathost has quit [Client Quit]
lolcathost has joined #ocaml
Neros has joined #ocaml
jamii has joined #ocaml
gnuvince has joined #ocaml
UncleVasya has quit [Read error: Connection reset by peer]
fraggle_ has quit [Ping timeout: 255 seconds]
bobry has joined #ocaml
fraggle_ has joined #ocaml
mika4 has quit [Quit: Leaving.]
PM has joined #ocaml
hkBst__ has quit [Quit: Konversation terminated!]
UncleVasya has joined #ocaml
mika4 has joined #ocaml
paolooo_ has joined #ocaml
paolooo_ has quit [Client Quit]
larhat has quit [Quit: Leaving.]
fraggle_ has quit [Ping timeout: 245 seconds]
Kakadu has quit []
fraggle_ has joined #ocaml
Cyanure has quit [Remote host closed the connection]
eikke has quit [Ping timeout: 246 seconds]
fraggle_ has quit [Ping timeout: 246 seconds]
cago has quit [Quit: Lost terminal]
mika4 has quit [Quit: Leaving.]
answer_42 has joined #ocaml
fraggle_ has joined #ocaml
tac has joined #ocaml
sepp2k has joined #ocaml
gnuvince has quit [Ping timeout: 244 seconds]
Cyanure has joined #ocaml
Yoric has quit [Ping timeout: 246 seconds]
rixed has quit [Ping timeout: 252 seconds]
rixed has joined #ocaml
andreypopp has quit [Quit: sleep]
mathieui has quit [Ping timeout: 252 seconds]
mathieui has joined #ocaml
answer_42 has quit [Ping timeout: 276 seconds]
justdit has joined #ocaml
leoncamel has quit [Ping timeout: 264 seconds]
justdit has quit [Ping timeout: 265 seconds]
answer_42 has joined #ocaml
gnuvince has joined #ocaml
justdit has joined #ocaml
Kakadu has joined #ocaml
eikke has joined #ocaml
justdit_ has joined #ocaml
justdit has quit [Ping timeout: 260 seconds]
justdit_ has quit [Read error: Connection reset by peer]
justdit has joined #ocaml
Submarine has joined #ocaml
Yoric has joined #ocaml
justdit_ has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
justdit_ has quit [Read error: Connection reset by peer]
gnuvince has quit [Ping timeout: 264 seconds]
cdidd has quit [Remote host closed the connection]
gnuvince has joined #ocaml
beckerb has quit [Quit: Konversation terminated!]
Neros has quit [Quit: No Ping reply in 180 seconds.]
Neros has joined #ocaml
mattrepl has quit [Quit: mattrepl]
oriba has joined #ocaml
oriba has quit [Read error: Connection reset by peer]
oriba has joined #ocaml
eikke has quit [Ping timeout: 240 seconds]
tac_ has joined #ocaml
answer_42 has quit [Quit: WeeChat 0.3.9.2]
answer_42 has joined #ocaml
tac has quit [Ping timeout: 245 seconds]
jamii has quit [Ping timeout: 260 seconds]
travisbrady has joined #ocaml
tac_ is now known as tac
chambart has quit [Ping timeout: 260 seconds]
jamii has joined #ocaml
Neros has quit [Quit: No Ping reply in 180 seconds.]
Neros has joined #ocaml
tane has joined #ocaml
travisbrady has quit [Quit: travisbrady]
djcoin has quit [Quit: WeeChat 0.3.9.2]
oriba has quit [Quit: oriba]
travisbrady has joined #ocaml
mye_ has joined #ocaml
sepp2k has quit [Remote host closed the connection]
mye has quit [Ping timeout: 260 seconds]
mye_ is now known as mye
paolooo has quit [Ping timeout: 245 seconds]
ontologiae has quit [Ping timeout: 252 seconds]
fraggle_ has quit [Ping timeout: 245 seconds]
fraggle_ has joined #ocaml
andreypopp has joined #ocaml
SanderM has joined #ocaml
Cyanure has quit [Read error: Connection timed out]
metasyntax|work has quit [Quit: WeeChat [quit]]
Yoric has quit [Remote host closed the connection]
Yoric has joined #ocaml
lolcathost is now known as Catnaroek
stj has joined #ocaml
<stj> is project oc4mc discontinued? there have been no updates from the last 2 years
<thelema> stj: as far as anyone knows, it is.
<Kakadu> stj: I've heard that ocamlpro does something in private
<flux> it's apparently the remaining 10% that is difficult when doing that :)
gnuvince has quit [Ping timeout: 276 seconds]
fraggle_ has quit [Ping timeout: 244 seconds]
andreypopp has quit [Quit: sleep]
andreypopp has joined #ocaml
Neros has quit [Ping timeout: 245 seconds]
chambart has joined #ocaml
Neros has joined #ocaml
Snark has quit [Quit: Quitte]
travisbrady has quit [Quit: travisbrady]
mattrepl has joined #ocaml
ontologiae has joined #ocaml
travisbrady has joined #ocaml
gustav__ has quit [Remote host closed the connection]
gustav__ has joined #ocaml
ontologiae has quit [Ping timeout: 244 seconds]
andreypopp has quit [Quit: sleep]
andreypopp has joined #ocaml
<adrien> PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
<adrien> 18806 root 20 0 543m 517m 9364 R 101 19.8 11:31.80 cc1plus
<adrien> wxpython building
<adrien> I really miss ocaml :P
<adrien> and I really don't miss idiots building languages bindings (made with SWIG) with g++' -O3
andreypopp has quit [Client Quit]
<thelema> :)
ftrvxmtrx has quit [Read error: Connection reset by peer]
andreypopp has joined #ocaml
Cyanure has joined #ocaml
andreypopp has quit [Client Quit]
Cyanure has quit [Max SendQ exceeded]
Kakadu has quit []
gustav__ has quit [Remote host closed the connection]
tane has quit [Ping timeout: 240 seconds]
gustav__ has joined #ocaml
answer_42 has quit [Ping timeout: 240 seconds]
<adrien> SWIG is really bad
<adrien> going to bed; I'm pondering letting this run during the night
<adrien> oh, btw, to be fair, sepxlib's camlp4-generated code is also *bad*
<adrien> it's very very redundant and it doesn't even factor out trivial stuff like record handling
<thelema> adrien: correctness is very important to jane street.
<thelema> the compiler can optimize.
<adrien> thelema: sure but the two are possible at the same time
<adrien> see http://git.ocamlcore.org/cgi-bin/gitweb.cgi?p=yypkg/yypkg.git;a=blob;f=preprocessed_src/types.ml;h=1af5b7d59c5e64ea4c0232b127568a7d48f15c52;hb=a76123b222db84c95206636d6484a20168a8d51d#l339
<adrien> that's sepxlib's output
<thelema> oh, I thought it would be worse.
<orbitz> is the binprot output better?
<thelema> I dunno.
<adrien> thelema: I'm not talking about going to great lengths to optimize but factorizing such stuff isn't difficult and will also help when debugging the output of the generator
<adrien> anyway, going to bed; wxpython has finished building and I noticed I don't have the pics I wanted to put into a panorama with hugin anymore
UncleVasya has quit [Ping timeout: 256 seconds]
andreypopp has joined #ocaml
eikke has joined #ocaml
mye has quit [Quit: mye]
mye has joined #ocaml
Neros has quit [Ping timeout: 260 seconds]
andreypopp has quit [Quit: sleep]
Catnaroek is now known as lolcathost
emmanuelux has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
Neros has joined #ocaml
Neros has quit [Read error: Connection reset by peer]
tane has joined #ocaml
mye has quit [Ping timeout: 252 seconds]
chambart has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
SanderM has quit [Remote host closed the connection]
Submarine has quit [Quit: Leaving]
gnuvince has joined #ocaml
chambart has quit [Ping timeout: 246 seconds]
metasyntax has quit [Quit: WeeChat [quit]]
thelema has quit [Remote host closed the connection]
myx has quit [Ping timeout: 250 seconds]
Yoric has quit [Ping timeout: 246 seconds]
tac has quit [Ping timeout: 245 seconds]
jamii has quit [Read error: Operation timed out]
travisbrady has quit [Quit: travisbrady]
mbac has quit [Quit: leaving]
smondet has quit [Ping timeout: 246 seconds]
<stj> can I somehow see what options ocamlfind provided to ocamlopt?
<stj> I use this: ocamlfind ocamlopt -package sdl,sdl.sdlttf,sdl.sdlmixer,sdl sdlloader.cmxa -linkpkg hello.ml -o hello
<stj> and wondering what would be the command without ocamlfind
dmilith has quit [Quit: ZNC - http://znc.sourceforge.net]
dmilith has joined #ocaml
emmanuelux has quit [Remote host closed the connection]
eikke has quit [Read error: Operation timed out]
ontologiae has joined #ocaml
ontologiae has quit [Ping timeout: 255 seconds]
leoncamel has joined #ocaml
Yoric has joined #ocaml