Erlang/OTP Forums

Author Message

<  Erlang questions mailing list  ~  Relative efficiency of external interfacing methods

jhague at dadgum.com
Posted: Fri May 21, 1999 2:50 pm Reply with quote
Guest
I'm writing some external C routines to be called from Erlang. I'll be
calling these routines a good many times per second. Each call will only
contain a small amount of data--three or four integers.

Is there any significant performance difference between using ports
and the newer, more direct method?

James



Post generated using Mail2Forum (http://m2f.sourceforge.net)
klacke at bluetail.com
Posted: Fri May 21, 1999 10:27 pm Reply with quote
Guest
>
> Is there any significant performance difference between using ports
> and the newer, more direct method?
>


What do you mean by "newer, more direct method" ??

/klacke



Post generated using Mail2Forum (http://m2f.sourceforge.net)
markn at cs.mu.OZ.AU
Posted: Sat May 22, 1999 1:13 am Reply with quote
Guest
On Sat, May 22, 1999 at 12:21:33AM +0200, Claes Wikstrom wrote:
>
> >
> > Is there any significant performance difference between using ports
> > and the newer, more direct method?
> >
>
>
> What do you mean by "newer, more direct method" ??
>

he probally meant the dynamic share library version, a linked in driver. :)


Speaking of the C interface, what are the plans for IG ?
At the moment it seems to rather limited, no handling of preprocessor directives
like #ifdef, #include.. forward typedefs etc.. but it is very niffy for simpler
Erlang to C calls. :)


mark



Post generated using Mail2Forum (http://m2f.sourceforge.net)
klacke at bluetail.com
Posted: Sat May 22, 1999 6:49 pm Reply with quote
Guest
>
> On Sat, May 22, 1999 at 12:21:33AM +0200, Claes Wikstrom wrote:
> >
> > >
> > > Is there any significant performance difference between using ports
> > > and the newer, more direct method?
> > >
> >
> >
> > What do you mean by "newer, more direct method" ??
> >
>
> he probally meant the dynamic share library version, a linked in driver. Smile
>

In that case the difference in performance between
calling a c-func in a linked driver versus calling a
c-func in another os process is enormous. It of
cource depends on the underlying OS, but on unix'es it's high
and on win32 it's extremely++ high.

The advantage of a linked-in driver is speed, the disadvantages are
the difficulties that are associated with running together with
the erlang runtime system. No blocking syscalls etc.


>
> Speaking of the C interface, what are the plans for IG ?

Yes, I'd like to know too ??

/klacke


Post generated using Mail2Forum (http://m2f.sourceforge.net)
jhague at dadgum.com
Posted: Mon May 24, 1999 2:16 am Reply with quote
Guest
> > What do you mean by "newer, more direct method" ??
> >
>
> he probally meant the dynamic share library version, a linked in driver. :)

Actually, I was under the mistaken assumption that IG used a different
method than ports, but I now see that they are exactly the same thing.

>The advantage of a linked-in driver is speed, the disadvantages are
>the difficulties that are associated with running together with
>the erlang runtime system. No blocking syscalls etc.

I've been considering trying this, because I think it would be
interesting. Are there any good examples? (There's probably at least
one in the documentation, but I haven't come across it yet :)



Post generated using Mail2Forum (http://m2f.sourceforge.net)
tobbe at serc.rmit.edu.au
Posted: Mon May 24, 1999 3:08 am Reply with quote
Guest
> I've been considering trying this, because I think it would be
> interesting. Are there any good examples? (There's probably at least
> one in the documentation, but I haven't come across it yet :)

There is a very simple example in the User Contrib area named: byteorder-1.0
Also: check out the device driver Appendix in the book.

/Tobbe




Post generated using Mail2Forum (http://m2f.sourceforge.net)

Display posts from previous:  

All times are GMT
Page 1 of 1
This forum is locked: you cannot post, reply to, or edit topics.

Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum