December 24, 2009
retard wrote:
> It's difficult to measure performance improvements overall in applications like image manipulation software or sound wave editors. E.g. if a complex effect processing takes now 2 seconds instead of 4 hours, but all GUI event processing is 100% slower, during the workday the application might only work 10% faster overall. The user spends much more time in the interactive part of the code. From what I've read, bearophile mostly only uses synthetic tests.

I find that benchmarks are useful in figuring out new ways to optimize code, but not very useful in predicting the performance of a compiler on any of my apps.
December 24, 2009
oh ... i stirred up a holy war, sorry

each lang has weak & strength features
e.g. need hight performance? - use asm and pay by development time

but i'm looking for a new lang generation (not c++ - it's too "dirty") w real objects & templates  and powerful multi-threading features
e.g. thread-local storage (TLS) and some concurrency features from c++0x

so, Walter, is it possible to expand a set of D's multi-threading features?

Walter Bright Wrote:

> retard wrote:
> > It's difficult to measure performance improvements overall in applications like image manipulation software or sound wave editors. E.g. if a complex effect processing takes now 2 seconds instead of 4 hours, but all GUI event processing is 100% slower, during the workday the application might only work 10% faster overall. The user spends much more time in the interactive part of the code. From what I've read, bearophile mostly only uses synthetic tests.
> 
> I find that benchmarks are useful in figuring out new ways to optimize code, but not very useful in predicting the performance of a compiler on any of my apps.

December 24, 2009
alkor wrote:
> but i'm looking for a new lang generation (not c++ - it's too "dirty") w real objects & templates  and powerful multi-threading features
> e.g. thread-local storage (TLS) and some concurrency features from c++0x
> 
> so, Walter, is it possible to expand a set of D's multi-threading features?

D already has TLS. What exactly do you need?
December 24, 2009
> D already has TLS. What exactly do you need?
hmm ... i don't think so.

i've worked out the following info: http://www.digitalmars.com/d/2.0/cpp0x.html#local-classes http://www.digitalmars.com/d/2.0/migrate-to-shared.html

but "shared data" are not TLS or i misunderstand something

whether you could give a TLS example?
December 24, 2009
On 12/24/2009 11:44 AM, alkor wrote:
>> D already has TLS. What exactly do you need?
> hmm ... i don't think so.
>
> i've worked out the following info:
> http://www.digitalmars.com/d/2.0/cpp0x.html#local-classes
> http://www.digitalmars.com/d/2.0/migrate-to-shared.html
>
> but "shared data" are not TLS or i misunderstand something
>
> whether you could give a TLS example?

int i;
void main() { }

compile with -vtls. :)
December 24, 2009
On Thu, 24 Dec 2009 13:44:41 +0300, alkor <alkor@au.ru> wrote:

>> D already has TLS. What exactly do you need?
> hmm ... i don't think so.
>
> i've worked out the following info:
> http://www.digitalmars.com/d/2.0/cpp0x.html#local-classes
> http://www.digitalmars.com/d/2.0/migrate-to-shared.html
>
> but "shared data" are not TLS or i misunderstand something
>
> whether you could give a TLS example?

"Shared data" is something which is *shared* between threads. That's exact opposite of TLS (thread-*local* storage).

In D2, everything is thread-local by default:

int foo; // thread-local
shared int bar; // shared among threads
1 2 3
Next ›   Last »