Re: Recipe and best practice for accessing COM

2012-07-25 Thread Sean Cavanaugh
On 7/24/2012 2:01 PM, newToCOM wrote: I am trying to use COM to access Windows functionality and APIs. I have read the interface documentation and some documentation at MSDN. I have seen the included sample snippet for IHello and the slides Modern COM programming in D, but it is still not clear

Re: tupleof for inherited classes.

2012-07-25 Thread Chris NS
I know you specifically asked for a way to do this without templates, but this was my first thought on how to make it work (and I confirmed it): ## import std.stdio , std.traits ; class Engine { int publicField ; void enumFields ( this Self )

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
Am 25.07.2012 01:10, schrieb Era Scarecrow: Remvoing the `align(1)` changes nothing, not 1ms slower or faster, unfortunately. [quote] [code] Vertex[] data; foreach(i; 0..6) { data ~= Vertex(positions[i][0], positions[i][1], positions[i][2], [/code] [/quote] Try using reserve? The new

opCast problem with 2.060

2012-07-25 Thread Namespace
[code] import std.conv : to; class Vector2D(T) { public: T x, y; this(T x, T y) { this.x = x; this.y = y; } U opCast(U)() const { return new U(x, y); } } alias Vector2D!(short) Vector2s; alias Vector2D!(float) Vector2f; void main() {

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
I'll try a different compiler, too. It's the same issue with ldc

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread Andrea Fontana
Have you checked your default compiler/linker args? Il giorno mer, 25/07/2012 alle 15.23 +0200, David ha scritto: I'll try a different compiler, too. It's the same issue with ldc

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
Am 25.07.2012 15:44, schrieb Andrea Fontana: Have you checked your default compiler/linker args? Il giorno mer, 25/07/2012 alle 15.23 +0200, David ha scritto: I'll try a different compiler, too. It's the same issue with ldc They didn't change (of course I changed the args which are

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
Ok here we go: perf.data: http://dav1d.de/perf.data and a fancy image (showing the results of perf): http://dav1d.de/output.png I hope anyone knows where the time is spent. Most time spent: + 53,14% bralad [unknown] [k] 0xc01e5d2b

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread Andrea Fontana
I had a performance problem with std.xml some month ago. It takes me a lot to point out that there was a default linker param (in gdc dmd under linux) that slow down the whole thing. So maybe it's not a code-related issue, I mean :) Il giorno mer, 25/07/2012 alle 15.53 +0200, David ha

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread Dmitry Olshansky
On 25-Jul-12 17:54, David wrote: Ok here we go: perf.data: http://dav1d.de/perf.data and a fancy image (showing the results of perf): http://dav1d.de/output.png I hope anyone knows where the time is spent. Most time spent: + 53,14% bralad [unknown] [k] 0xc01e5d2b Would

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
Am 25.07.2012 16:23, schrieb Dmitry Olshansky: On 25-Jul-12 17:54, David wrote: Ok here we go: perf.data: http://dav1d.de/perf.data and a fancy image (showing the results of perf): http://dav1d.de/output.png I hope anyone knows where the time is spent. Most time spent: + 53,14% bralad

Re: opCast problem with 2.060

2012-07-25 Thread Jonathan M Davis
On Wednesday, July 25, 2012 14:59:15 Namespace wrote: With 2.059 both works fine. What is the problem now? If you find a bug with the latest on github or with the beta (which was just released: http://forum.dlang.org/post/500e674b.1050...@digitalmars.com ), please report them. And if something

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread Dmitry Olshansky
On 25-Jul-12 19:32, David wrote: Am 25.07.2012 16:23, schrieb Dmitry Olshansky: On 25-Jul-12 17:54, David wrote: Ok here we go: perf.data: http://dav1d.de/perf.data and a fancy image (showing the results of perf): http://dav1d.de/output.png I hope anyone knows where the time is spent. Most

Re: opCast problem with 2.060

2012-07-25 Thread Namespace
If you find a bug with the latest on github or with the beta (which was just released: http://forum.dlang.org/post/500e674b.1050...@digitalmars.com ), please report them. And if something worked with 2.059, please mark it as a regression. Next time. ;) I'm still searching.

Re: Recipe and best practice for accessing COM

2012-07-25 Thread Jesse Phillips
On Tuesday, 24 July 2012 at 19:01:15 UTC, newToCOM wrote: I am trying to use COM to access Windows functionality and APIs. I have read the interface documentation and some documentation at MSDN. I have seen the included sample snippet for IHello and the slides Modern COM programming in D, but

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
It looks like a syscall/opengl issue. You somehow managed to hit a dark corner of GL driver. It's either a fallback to software (partial) or some extra translation layer. I once had a cool table that showed which GL calls are direct to hardware and which are not for various nvidia cards. Now

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread Dmitry Olshansky
On 26-Jul-12 00:52, David wrote: It looks like a syscall/opengl issue. You somehow managed to hit a dark corner of GL driver. It's either a fallback to software (partial) or some extra translation layer. I once had a cool table that showed which GL calls are direct to hardware and which are not

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
Am 25.07.2012 23:03, schrieb Dmitry Olshansky: On 26-Jul-12 00:52, David wrote: It looks like a syscall/opengl issue. You somehow managed to hit a dark corner of GL driver. It's either a fallback to software (partial) or some extra translation layer. I once had a cool table that showed which GL

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread bearophile
David: Well the intersting question is, why is it slower? I checked it twice, the data passed to the GPU is 100% the same, no difference, the only difference is the stored format on the CPU (and that's just a matter of casting). It's not easy to answer similar general questions. Why don't

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
Am 26.07.2012 00:12, schrieb Ali Çehreli: On 07/24/2012 11:38 AM, David wrote: Well this change decreases my performance by 1000%. Random guess: CPU cache misses? Ali You're the 2nd one mentioning this, any ideas how to check this?

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
It's not easy to answer similar general questions. Why don't you list the assembly of the two versions and compare? My assembly is pretty rusty and actually, I have no idea what to look for.

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread Ali Çehreli
On 07/25/2012 03:26 PM, David wrote: Am 26.07.2012 00:12, schrieb Ali Çehreli: On 07/24/2012 11:38 AM, David wrote: Well this change decreases my performance by 1000%. Random guess: CPU cache misses? Ali You're the 2nd one mentioning this, any ideas how to check this? I have no

Re: float[] → Vertex[] – decreases performance by 1000%

2012-07-25 Thread David
Am 26.07.2012 00:37, schrieb Ali Çehreli: On 07/25/2012 03:26 PM, David wrote: Am 26.07.2012 00:12, schrieb Ali Çehreli: On 07/24/2012 11:38 AM, David wrote: Well this change decreases my performance by 1000%. Random guess: CPU cache misses? Ali You're the 2nd one mentioning this, any