August 03, 2002 Re: Linker | ||||
---|---|---|---|---|
| ||||
Posted in reply to Heinz Saathoff | In article <MPG.17b457435bb5f6899896af@news.digitalmars.com>, Heinz Saathoff says... > >Do you do the matrix multiply in a function taking the matrices as 'pointer to double' parameters like > > void MatrixMul(int N, double *A, double *B, double *C) Look at the codes I sent, please. >What would make a difference is simulating a 2D array with pointers as in > > double **A = new double*[N]; I'm not so stupid or ignorant to do that. >Another point could be different alignment of static array and dynamic allocated array. We had this discussion in the group that 8-byte aligned doubles are faster than 4-byte aligned doubles. That's obvious stuff I dind't mentioned, I'm using floats. > >IMO this can only happen when the routines directly access the global static buffer and not taking the arguments as parameters. > This is the same conclusion I came to looking at assembly language compiler output. However, this is only true for DMC, try with BC++, or a compiler for RISC architectures anf you'll find that this makes no difference (as it should be...) Federico |
August 03, 2002 Re: Linker | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter | Thanks to everyone who replied. Now that I solved the problem and I'm happy,I have to make two comments: 1) the C standard and DMC docs state no limit on statically allocated areas. I know form past interactiosn that the (wonderful!) linker is not in Walter's control, but that problem is not nice at all; 2) before solving the problem, I anyhow ordered the DM CD: it's a wonderful product, I love it more than I loved Symantec C++ in the past, it's worth really more than 25 bucks! Federico |
August 03, 2002 Re: Linker | ||||
---|---|---|---|---|
| ||||
Posted in reply to Federico | Federico wrote:
> In article <3D4B044D.97C0BB2E@smartsoft.cc>, Jan Knepper says...
> >
> >> >What about the DM Linker???
> >> Look at the other messages, it fails.
> >
> >I meant, the messages the linker gives you. You give a report for all the other linkers I can not help you with.
> >
> A dialog box appears. The title is:
> "Unexpected OPTLINK termination at EIP=0043E29C"
>
> The body contains a red circle with a white X in it, and says: "EAX=00000000 EBX=0046C7A0 ECX=00001000 EDX=000008DF ESI=00000000 EDI=00004056 EBP=006BFF78 ESP=006BFE10 First=00430000"
<g>
That's all?!
Jan
|
August 03, 2002 Re: Linker | ||||
---|---|---|---|---|
| ||||
Posted in reply to Federico | Federico wrote:
> 2) before solving the problem, I anyhow ordered the DM CD: it's a wonderful product, I love it more than I loved Symantec C++ in the past, it's worth really more than 25 bucks!
I thought it is currently being sold for $50???
Jan
|
August 04, 2002 Re: Linker | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jan Knepper | In article <3D4C0358.45137DD6@smartsoft.cc>, Jan Knepper says... > ><g> >That's all?! > Yes. I'm not used to hide information to people helping me... ;-) Walter said it is a problem in OPTLINK he cannot fix. BTW, I'm running WinME, but I had the same problem with different versions and on different systems. Federico |
August 04, 2002 Re: Linker | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jan Knepper | In article <3D4C0399.A6578C4C@smartsoft.cc>, Jan Knepper says... > >I thought it is currently being sold for $50??? > http://www.digitalmars.com/shop.html says $25, PayPal charged me $25 + $6 (S&H). I'd pay $50 as well, it's worth even more, however in those days of poor compilers available for free, and of people satisfied with those, keeping the price low could be a good approach. Federico |
August 04, 2002 Re: Linker | ||||
---|---|---|---|---|
| ||||
Posted in reply to Federico | In article <aigqms$2li6$1@digitaldaemon.com>, Federico says... > >The files: >rs.c the original one, arrays defined at file scope >rsdyn.c pointers defined at file scope, malloc'ed memory areas >rsdynb.c pointers defined at function scope, malloc'ed memory areas >rsdynf.c pointers defined at file scope, malloc'ed memory areas passed >as parameters to a function implementing the core computation >rsdynbf.c pointers defined at function scope, malloc'ed memory areas >passed as parameters to a function implementing the core >computation > Should someone be interested in, I forgot to mention compiler options. I used -WA -o+all -ff Federico |
Copyright © 1999-2021 by the D Language Foundation