<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#ffffff" text="#000000">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="ProgId" content="Word.Document">
<meta name="Generator" content="Microsoft Word 11">
<meta name="Originator" content="Microsoft Word 11">
<link rel="File-List"
href="file:///C:%5CUsers%5CPakal%5CAppData%5CLocal%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml">
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:HyphenationZone>21</w:HyphenationZone>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" LatentStyleCount="156">
</w:LatentStyles>
</xml><![endif]-->
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 70.85pt 70.85pt;
mso-header-margin:36.0pt;
mso-footer-margin:36.0pt;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Tableau Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}
</style>
<![endif]-->
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">Hello
everyone, <o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">I've
already read quite a bit about the reasons for the GIL in CPython, i.e
to
summarize, that a more-fine graine locking, allowing real concurrency
in
multithreaded applications, would bring too much overhead for
single-threaded
python applications.<o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">However,
I've also heard that other python implementations (ironpython,
jython...) have
no GIL, and yet nobody blames them for performance penalties that would
be
caused by that lack (I especially think about IronPython, whose
performances
compare quite well to CPython).<o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">So I'd
like to know: how do these other implementations handle concurrency
matters for
their primitive types, and prevent them from getting corrupted in
multithreaded
programs (if they do) ? I'm not only thinking about python types, but
also primitive
containers and types used in .Net and Java VMs, which aren't atomic
elements
either at an assembly-level point of view.<o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">Do these
VMs have some GIL-like limitations, that aren't spoken about ? Are
there
functionings completely different from the CPython VM, so that the
question is
not relevant ? Do people consider that they always concern
multithreaded
applications, and so accept performance penalties that they wouldn't
allow in
their CPython scripts ?<o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">I
think you in advance for your lights on these questions.<o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">Regards, <o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">Pkl<o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;">[[
Important Note: this is a serious question, trolls and emotionally
disturbed
persons had better go on their way. ]]<o:p></o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
<p class="MsoNormal" style=""><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></p>
</body>
</html>