From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id QAA16985; Wed, 11 Aug 2004 16:52:26 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id QAA16846 for ; Wed, 11 Aug 2004 16:52:25 +0200 (MET DST) Received: from plover.csun.edu (plover.csun.edu [130.166.1.24]) by concorde.inria.fr (8.12.10/8.12.10) with ESMTP id i7BEqNRM003323 for ; Wed, 11 Aug 2004 16:52:24 +0200 Received: from puffin.csun.edu (puffin.csun.edu [130.166.1.21]) by plover.csun.edu (MOS 3.4.7-GR) with ESMTP id BGD69270; Wed, 11 Aug 2004 07:52:19 -0700 (PDT) Received: from [130.166.10.117] (s010n117.csun.edu [130.166.10.117]) by puffin.csun.edu (MOS 3.4.7-GR) with ESMTP id CCB02138 (AUTH eric); Wed, 11 Aug 2004 07:52:18 -0700 (PDT) In-Reply-To: <49993.60.246.255.166.1092114361.squirrel@www.ivorykite.com> References: <36002.60.246.254.84.1091587147.squirrel@www.ivorykite.com> <36292.60.246.254.84.1091597068.squirrel@www.ivorykite.com> <44554.60.246.254.84.1091607496.squirrel@www.ivorykite.com> <4110B512.40108@kittown.com> <50714.60.246.254.84.1091615122.squirrel@www.ivorykite.com> <37738.60.246.255.171.1091633896.squirrel@www.ivorykite.com> <49993.60.246.255.166.1092114361.squirrel@www.ivorykite.com> Mime-Version: 1.0 (Apple Message framework v618) Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: <0BFACEB2-EBA6-11D8-9B5E-000A95A1E69A@csun.edu> Content-Transfer-Encoding: 7bit Cc: caml-list@inria.fr From: Eric Stokes Subject: Re: [Caml-list] custom mmap modeled on bigarray Date: Wed, 11 Aug 2004 07:52:20 -0700 To: effbiae@ivorykite.com X-Mailer: Apple Mail (2.618) X-Junkmail-Status: score=0/50, host=puffin.csun.edu X-Miltered: at concorde with ID 411A32A7.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; caml-list:01 modeled:01 argued:01 0011:99 1001:99 0101:99 ffi:01 slower:01 ffi:01 bug:01 faq:01 faq:01 beginner's:01 beginners:01 arrays:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Even if it isn't it can be distributed as a GODI patch fairly easily. I think a patch such as this, if architected well would allow me to improve performance of some of my C bindings even more, and that is a good thing. On Aug 9, 2004, at 10:06 PM, Jack Andrews wrote: > i know the argument for developing first, optimizing later. i also > know > the arguments for not caring about fine-grain performance and to look > at the big picture. i've argued both and seen where these arguments > fail. > > consider compressed data as a bit stream from disk. > say it has simple encoding: > phrase := > byte:, byte:, int[]: > eg: > 0x03 0x0a 0b1110 0011 1001 0100 1110 0101 1101 1100 > | | + > | +number-of-values > +number-of-bits > > represents the sequence of 10 3-bit numbers: > > 111,000,111,001,010,011,100,101,110,111 > > now consider a sentence as > sentence := | phrase, sentence > > without an enhanced FFI, ocaml will be considerably slower than C for > uncompressing (and compressing). > > in my previous post, i suggest that some language primitives similar to > %bigarray_ref_1 could be introduced to make ocaml comparable to C. i > have investigated this possibility, and my suggestion is that > %bigarray_ref is replaced by a primitive %ffi_ref and made public. > then bigarray can be built on the more general %ffi_ref and developers > have a fast means of accessing C arrays like mmap regions. > > if i spend time implementing %ffi_ref/set, is there any chance of it > being > incorporated into ocaml? > > thanks, > > > > jack > > > ------------------- > To unsubscribe, mail caml-list-request@inria.fr Archives: > http://caml.inria.fr > Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: > http://caml.inria.fr/FAQ/ > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners