From: tmp123@menta.net
To: caml-list@yquem.inria.fr
Subject: Execution time of class versus record
Date: Sun, 24 Jun 2007 17:20:15 +0200 [thread overview]
Message-ID: <467E8BAF.9040905@menta.net> (raw)
Hello,
I've tried to implement two equivalent small programs, the one using
class, the other one using records. The resulting execution times says
that class are 7-8 times slower than record (compiled with ocamlopt in a
Intel machine).
Please, knows someone what I'm doing wrong?
The programs are:
records1.ml
=========
type ra = { mutable t : int }
let main () =
let a = { t = 0 } in
for i = 0 to 100000 do
a.t <- a.t + i
done;
Printf.printf "t = %d\n" a.t
let _ =
let t0 = Unix.gettimeofday () in
main();
Printf.printf "elapsed = %f\n" (Unix.gettimeofday() -. t0)
class1.ml
=======
class ca =
object
val mutable t = 0
method add x = t <- t+x
method get () = t
end
let main () =
let a = new ca in
for i = 0 to 100000 do
a#add i
done;
Printf.printf "t = %d\n" (a#get())
let _ =
let t0 = Unix.gettimeofday () in
main();
Printf.printf "elapsed = %f\n" (Unix.gettimeofday() -. t0)
Thanks a lot.
next reply other threads:[~2007-06-24 15:20 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-24 15:20 tmp123 [this message]
[not found] <20070626065522.6175FBC77@yquem.inria.fr>
2007-06-26 7:36 ` David Allsopp
-- strict thread matches above, loose matches on Subject: below --
2007-06-24 15:18 tmp123
2007-06-24 15:14 tmp123
2007-06-26 13:35 ` Sam Steingold
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=467E8BAF.9040905@menta.net \
--to=tmp123@menta.net \
--cc=caml-list@yquem.inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox