This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: question about shared memory in the cygwin daemon


We currently run on 32bit windows and 32/64but solaris with near future
plans to run on 64bit windows. The product is for a specific client so
we can assume 4gb or more of physical ram.

As for Matlab, the problem is that the library routines for embedding
matlab spawn a separate process and use IPC to talk to it (COM under
windows I believe) so data sent is copied to another address space.

Again, we can assume sufficient RAM for a data set and even if a page is
swapped out to disk, it should be data that's not actively processing so
the impact on performance should be less than processing directly on
disk.
------------------------------
Trevor R.H. Clarke
tclarke@ball.com
Ball Aerospace & Technologies Corp

-----Original Message-----
From: Dave Korn [mailto:dk@artimi.com] 
Sent: Wednesday, August 04, 2004 1:37 PM
To: cygwin@cygwin.com
Subject: RE: question about shared memory in the cygwin daemon

> -----Original Message-----
> From: cygwin-owner On Behalf Of Clarke, Trevor
> Sent: 04 August 2004 17:54

> I'm currently developing image processing software which will 
> use matlab
> as a "plugin" for interactive processing. The problem is, matlab, when
> called from another program, spawns a separate matlab engine process.
> The data we are working with can get very large (4gb+) so we 
> can't pass
> copies of it around. We are looking at using cygwin's shared memory
> functionality to get around this on windows (NT derivatives only).

  Your data won't even fit into a 32-bit address space, so I don't think
shared memory is going to help you.

  Even if you're using an x86-64 platform, you have to bear in mind that
you've got a virtual memory system there.  If your data set is 4Gb, and
your
system RAM is < 4Gb, then even mapping it into shared memory between
processes will involve it going out to disk and back when the pagefile
starts swapping.

  Is there not a library version of matlab you can link to your
application
and call into from the same process space?


    cheers, 
      DaveK
-- 
Can't think of a witty .sigline today....

BEGIN:VCARD
VERSION:2.1
N:Clarke;Trevor
FN:Clarke, Trevor
ORG:Ball Aerospace & Technologies Corporation;14671101
TEL;WORK;VOICE:(937) 320-7087  
EMAIL;PREF;INTERNET:tclarke@ball.com
REV:20040707T203457Z
END:VCARD
--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]