From pdalgd at gmail.com  Mon Oct 21 18:07:34 2013
From: pdalgd at gmail.com (peter dalgaard)
Date: Mon, 21 Oct 2013 18:07:34 +0200
Subject: [Rd] Parallel R expression evaluations
In-Reply-To: <70F220AA-E852-43F5-B3CA-302B72AF2C89@r-project.org>
References: <1381931846577-4678352.post@n4.nabble.com>
	<77E2443B-BF01-42F8-B3AE-6AAF5CA9B391@r-project.org>
	<1382161049530-4678587.post@n4.nabble.com>
	<70F220AA-E852-43F5-B3CA-302B72AF2C89@r-project.org>
Message-ID: <3D598EAF-DC1F-4721-A98B-10676146AA41@gmail.com>


On Oct 21, 2013, at 02:24 , Simon Urbanek wrote:

> Jai,
> 
> On Oct 19, 2013, at 1:37 AM, JaiReddy wrote:
> 
>> Thanks Simon.
>> 
>> May I know how R works if two expressions come at the same time for
>> evaluation. When I debug my case I found that issue was found with indexed
>> values of protected items. 
>> 
>> As R is single threaded engine, I just want to know how does R behave when
>> 2nd expression comes for parsing and evaluation even before 1st expression
>> evaluation does complete?
>> 
> 
> As I said, no API calls may be performed in parallel, that includes parsing and evaluation. Typically, R is run in a sequential loop: read, parse, eval, print so anything that is not processed is blocked until the loop is back to reading. However, given that R can be called from arbitrary front-ends, it's really up to the front-end to decide what to do - as long as it serializes the calls appropriately.
> 

Things like GUI callbacks can get evaluated while other evaluation is in progress. In that case, a stack discipline is maintained, i.e. expression1 does not continue until expression2 is evaluated, but expression3 may arrive and block the other two. This isn't really much different from what happens if expression1 encounters an object that requires lazy evaluation. If the intermittent calls have no side effects, or at least keep them within a well-defined universe, the interrupted call should be unaffected.

However, this will not happen while expression1 is evaluating C code, only when the R evaluator is called. 

-pd


> Cheers,
> Simon
> 
> 
>> 
>> Thanks
>> Jai
>> 
>> 
>> 
>> --
>> View this message in context: http://r.789695.n4.nabble.com/Parallel-R-expression-evaluations-tp4678352p4678587.html
>> Sent from the R devel mailing list archive at Nabble.com.
>> 
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>> 
> 
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel

-- 
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Email: pd.mes at cbs.dk  Priv: PDalgd at gmail.com



[Rd] Parallel R expression evaluations
peter dalgaard