From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Marius Vollmer Newsgroups: gmane.lisp.guile.user Subject: Re: Some introductory docs about C level threading Date: Wed, 09 Feb 2005 13:13:09 +0100 Message-ID: References: <6b496d191d7216e82df4e9a7afbb3168@raeburn.org> <87fz0falxl.fsf@zip.com.au> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1107951214 3344 80.91.229.2 (9 Feb 2005 12:13:34 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 9 Feb 2005 12:13:34 +0000 (UTC) Cc: guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Wed Feb 09 13:13:34 2005 Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1CyqiN-0001hS-UX for guile-user@m.gmane.org; Wed, 09 Feb 2005 13:13:04 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Cyqwu-0004IO-AI for guile-user@m.gmane.org; Wed, 09 Feb 2005 07:28:04 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Cyqwf-0004Dg-Ip for guile-user@gnu.org; Wed, 09 Feb 2005 07:27:49 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Cyqwe-0004DD-Pl for guile-user@gnu.org; Wed, 09 Feb 2005 07:27:49 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Cyqwe-0004D9-N0 for guile-user@gnu.org; Wed, 09 Feb 2005 07:27:48 -0500 Original-Received: from [129.217.163.1] (helo=mail.dt.e-technik.uni-dortmund.de) by monty-python.gnu.org with esmtp (Exim 4.34) id 1CyqiY-0004Eq-O5 for guile-user@gnu.org; Wed, 09 Feb 2005 07:13:15 -0500 Original-Received: from localhost (localhost [127.0.0.1]) by mail.dt.e-technik.uni-dortmund.de (Postfix) with ESMTP id 9C7C244234; Wed, 9 Feb 2005 13:13:10 +0100 (CET) Original-Received: from mail.dt.e-technik.uni-dortmund.de ([127.0.0.1]) by localhost (krusty [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 13322-03-6; Wed, 9 Feb 2005 13:13:09 +0100 (CET) Original-Received: from troy.dt.e-technik.uni-dortmund.de (troy.dt.e-technik.uni-dortmund.de [129.217.163.17]) by mail.dt.e-technik.uni-dortmund.de (Postfix) with ESMTP id 8F17544233; Wed, 9 Feb 2005 13:13:09 +0100 (CET) Original-Received: by troy.dt.e-technik.uni-dortmund.de (Postfix, from userid 520) id 519F7B965; Wed, 9 Feb 2005 13:13:09 +0100 (CET) Original-To: Ken Raeburn In-Reply-To: (Ken Raeburn's message of "Tue, 1 Feb 2005 19:38:03 -0500") User-Agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3 (gnu/linux) X-Virus-Scanned: by amavisd-new at dt.e-technik.uni-dortmund.de X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org X-MailScanner-To: guile-user@m.gmane.org Xref: main.gmane.org gmane.lisp.guile.user:4227 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.user:4227 Ken Raeburn writes: >> SCM type will mean it's atomic. > > If use of the SCM type is assumed to be atomic in terms of CPU memory > access and inter-CPU memory consistency, that's fine, but it should be > documented as such -- and we should acknowledge that ports to > architectures where that assumption does not hold may not be possible. Yes, this is exactly my intention. > [...] > Depending on just how it works out, that could mean essentially > declaring some of the scheme object types (like cons cells) as > volatile, which would be poor for performance. That would be no show-stopper: if Guile can only be correct with poor performance on some platform, than we have to swallow that. > And volatile declarations may fix the possibility of storing > incomplete values, but I don't think it would deal with the > cross-thread memory access ordering issue. As long as accesses to SCM values are atomic, the ordering of loads/stores across threads can be arbitrary. _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user