Topic: Kona Compromise?


Author: "george.ryan@gmail.com" <george.ryan@gmail.com>
Date: Mon, 27 Jul 2009 15:20:34 CST
Raw View
I was just reading over n2889 (http://www.open-std.org/jtc1/sc22/wg21/
docs/papers/2009/n2889.html) and noticed the following:

"One of the simplest methods for exploiting parallelism is to call one
subroutine in parallel with another. However, with the current
threading facilities, doing so is a difficult task. There have been
repeated requests for a simpler mechanism, all of which were rejected
by the committee as not being within the spirit of the Kona
compromise."

Can someone explain what the Kona compromise was and how it affects
the above? Maybe an article or document?

Thanks.

--
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@netlab.cs.rpi.edu]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html                      ]





Author: Anthony Williams <anthony.ajw@gmail.com>
Date: Tue, 28 Jul 2009 12:45:08 CST
Raw View
"george.ryan@gmail.com" <george.ryan@gmail.com> writes:

> I was just reading over n2889 (http://www.open-std.org/jtc1/sc22/wg21/
> docs/papers/2009/n2889.html) and noticed the following:
>
> "One of the simplest methods for exploiting parallelism is to call one
> subroutine in parallel with another. However, with the current
> threading facilities, doing so is a difficult task. There have been
> repeated requests for a simpler mechanism, all of which were rejected
> by the committee as not being within the spirit of the Kona
> compromise."
>
> Can someone explain what the Kona compromise was and how it affects
> the above? Maybe an article or document?

The "Kona compromise" was a compromise reached at a C++ committee
meeting in Kona. The agreement was to include futures and a simple
mechanism for launching asynchronous tasks within C++0x, but defer
thread pools for a TR or further revision of the standard.

The wording of the motion was:

"WG21 Resolves that for this revision of the C++ standard (aka "C++0x")
the scope of concurrency extensions shall be constrained as follows:

- Include a memory model, atomic operations, threads, locks, condition
   variables, and asynchronous future values.

- Exclude thread pools, task launching, and reader-writer locks. "

Anthony
--
Author of C++ Concurrency in Action | http://www.manning.com/williams
just::thread C++0x thread library   | http://www.stdthread.co.uk
Just Software Solutions Ltd         | http://www.justsoftwaresolutions.co.uk
15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK. Company No. 5478976

[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@netlab.cs.rpi.edu]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html                      ]