Why is this D code slower than C++?

nobody_ spam at spam.spam
Wed Jan 17 16:18:07 PST 2007


>
> I ran it with -profile and it takes about 25 min.

Talk about overhead :)
cpp took about 7 minutes
(log attached)


>
> here's the log
>
> http://www.webpages.uidaho.edu/~shro8822/trace.log 


begin 666 trace.log
M+2TM+2TM+2TM+2TM+2TM+2TM#0H)(" @(#$)7U=I;DUA:6Y ,38-"C\_,$5N
M9VEN94!287ET<F%C97) 0%%!14!86 at DQ"3 at V. DX-C at -"BTM+2TM+2TM+2TM
M+2TM+2TM+0T*"2 @(#8T"3]);FET4V-E;F5 4V-E;F5 4F%Y=')A8V5R0$!1
M04586%H-"C\_,$UA=&5R:6%L0%)A>71R86-E<D! 44%%0%A:"38T"34S,3()
M-3,Q, at T*+2TM+2TM+2TM+2TM+2TM+2TM#0H)-#<U,C at X"3]296YD97) 16YG
M:6YE0%)A>71R86-E<D! 44%%7TY86 at T*"3,Y,34Y,S )/U)A>71R86-E0$5N
M9VEN94!287ET<F%C97) 0%%!15!!5E!R:6UI=&EV94 R0$%!5E)A>4 R0$%!
M5G9E8W1O<C- ,D!(34%!34!:#0H_/S!287E 4F%Y=')A8V5R0$!1045 04%6
M=F5C=&]R,T Q0#! 6 at DT,SDQ,C$X"34W-3 at Y-C@P- DU-S4X.38X,#0-"BTM
M+2TM+2TM+2TM+2TM+2TM+0T*"2 @(" Q"5]7:6Y-86EN0#$V#0H_/S!3=7)F
M86-E0%)A>71R86-E<D! 44%%0$A(0%H),0DQ.# Y,C@),3 at P.3(X#0HM+2TM
M+2TM+2TM+2TM+2TM+2T-"@D@(" @,0E?5VEN36%I;D Q- at T*/T-L96%R0%-U
M<F9A8V5 4F%Y=')A8V5R0$!1045824!:"3$)-S0W-S(T, DW-#<W,C0P#0HM
M+2TM+2TM+2TM+2TM+2TM+2T-"@DX.#(P.0E?5VEN36%I;D Q- at T*/T1R87=7
M:6YD;W= 0%E!6%A:"3 at X,C Y"34W-SDS-C8Q-3$W. DT-# T,# Y-C<W-S at -
M"@DY,38V.0D_5VYD4')O8T! 64=*4$%824E*0%H-"BTM+2TM+2TM+2TM+2TM
M+2TM+0T*"3$S,#<X,3$)/U)A>71R86-E0$5N9VEN94!287ET<F%C97) 0%%!
M15!!5E!R:6UI=&EV94 R0$%!5E)A>4 R0$%!5G9E8W1O<C- ,D!(34%!34!:
M#0H_1V5T3F]R;6%L0%!L86YE4')I;4!287ET<F%C97) 0%5!13]!5G9E8W1O
M<C- ,D!!058S,D! 6 at DQ,S W.#$Q"3$T-C<W,#,S- at DQ-#8W-S S,S8-"BTM
M+2TM+2TM+2TM+2TM+2TM+0T*"3$S.# V-S0)/U)A>71R86-E0$5N9VEN94!2
M87ET<F%C97) 0%%!15!!5E!R:6UI=&EV94 R0$%!5E)A>4 R0$%!5G9E8W1O
M<C- ,D!(34%!34!:#0H_1V5T3F]R;6%L0%-P:&5R94!287ET<F%C97) 0%5!
M13]!5G9E8W1O<C- ,D!!058S,D! 6 at DQ,S at P-C<T"3(Q-C at U.30Y-@DR,38X
M-3DT.38-"BTM+2TM+2TM+2TM+2TM+2TM+0T*"3(Y,C<S,S()/U)A>71R86-E
M0$5N9VEN94!287ET<F%C97) 0%%!15!!5E!R:6UI=&EV94 R0$%!5E)A>4 R
M0$%!5G9E8W1O<C- ,D!(34%!34!:#0H_1V5T5'EP94!3<&AE<F5 4F%Y=')A
M8V5R0$!5045(6%H),CDR-S,S, at DS-CDR-C8Q,#@),S8Y,C8V,3 X#0HM+2TM
M+2TM+2TM+2TM+2TM+2T-"@D@(" @,0E?5VEN36%I;D Q- at T*/TEN:71#:&%R
M<V5T0%-U<F9A8V5 4F%Y=')A8V5R0$!104586%H),0DX,C at Y, at DW,#0W- at T*
M"2 @(#4P"3]3971#:&%R0%-U<F9A8V5 4F%Y=')A8V5R0$!104582%!!1# P
M,#! 6 at T*+2TM+2TM+2TM+2TM+2TM+2TM#0H)(" @(#$)7U=I;DUA:6Y ,38-
M"C]);FET4F5N9&5R0$5N9VEN94!287ET<F%C97) 0%%!15A86 at DQ"3$V,3 at P
M"3$V,3 at P#0HM+2TM+2TM+2TM+2TM+2TM+2T-"@D@(" @,0E?5VEN36%I;D Q
M- at T*/TEN:7138V5N94!38V5N94!287ET<F%C97) 0%%!15A86 at DQ"3,U,3$Y
M, at DR-C8T-C@-"@D@(" V- D_/S!-871E<FEA;$!287ET<F%C97) 0%%!14!8
M6 at T*"2 @(#8R"3]3971.86UE0%!R:6UI=&EV94!287ET<F%C97) 0%%!15A0
M041 6 at T*"2 @(" R"3],:6=H=$!0<FEM:71I=F5 4F%Y=')A8V5R0$!50458
M7TY 6 at T*+2TM+2TM+2TM+2TM+2TM+2TM#0H),3 X-C0T-#0)/U)A>71R86-E
M0$5N9VEN94!287ET<F%C97) 0%%!15!!5E!R:6UI=&EV94 R0$%!5E)A>4 R
M0$%!5G9E8W1O<C- ,D!(34%!34!:#0H_26YT97)S96-T0%!L86YE4')I;4!2
M87ET<F%C97) 0%5!14A!059287E ,D!!04U 6 at DQ,#@V-#0T- DQ-S(P,3,V
M,C$R"3$W,C Q,S8R,3(-"BTM+2TM+2TM+2TM+2TM+2TM+0T*"3$Y-34Q,30Q
M- at D_4F%Y=')A8V5 16YG:6YE0%)A>71R86-E<D! 44%%4$%64')I;6ET:79E
M0#) 04%64F%Y0#) 04%6=F5C=&]R,T R0$A-04%-0%H-"C]);G1E<G-E8W1 
M4W!H97)E0%)A>71R86-E<D! 54%%2$%!5E)A>4 R0$%!34!:"3$Y-34Q,30Q
M- at DR.#4S-3 Y-C(V, DR.#4S-3 Y-C(V, T*+2TM+2TM+2TM+2TM+2TM+2TM
M#0H)(" @(#()/TEN:7138V5N94!38V5N94!287ET<F%C97) 0%%!15A86 at T*
M/TQI9VAT0%!R:6UI=&EV94!287ET<F%C97) 0%5!15A?3D!:"3(),3 at P"3$X
M, T*+2TM+2TM+2TM+2TM+2TM+2TM#0H)(" @(#()7U=I;DUA:6Y ,38-"C]0
M<FEN=$!3=7)F86-E0%)A>71R86-E<D! 44%%6%!!1$A(24!:"3(),34W.38)
M,34W.38-"BTM+2TM+2TM+2TM+2TM+2TM+0T*"30W-3(X. D_4F5N9&5R0$5N
M9VEN94!287ET<F%C97) 0%%!15].6%H-"@DY.#@U.3@)/U)A>71R86-E0$5N
M9VEN94!287ET<F%C97) 0%%!15!!5E!R:6UI=&EV94 R0$%!5E)A>4 R0$%!
M5G9E8W1O<C- ,D!(34%!34!:#0H_4F%Y=')A8V5 16YG:6YE0%)A>71R86-E
M<D! 44%%4$%64')I;6ET:79E0#) 04%64F%Y0#) 04%6=F5C=&]R,T R0$A-
M04%-0%H),30V,S at X-@DV,#@Q-S<Y.3DS-C@),3<V,C at P,C,P-# T#0H),3 X
M-C0T-#0)/TEN=&5R<V5C=$!0;&%N95!R:6U 4F%Y=')A8V5R0$!5045(04%6
M4F%Y0#) 04%-0%H-"@DQ.34U,3$T,38)/TEN=&5R<V5C=$!3<&AE<F5 4F%Y
M=')A8V5R0$!5045(04%64F%Y0#) 04%-0%H-"@DR.3(W,S,R"3]'9714>7!E
M0%-P:&5R94!287ET<F%C97) 0%5!14A86 at T*"3,Y,34Y,S )/S\P4F%Y0%)A
M>71R86-E<D! 44%%0$%!5G9E8W1O<C- ,4 P0%H-"@DQ,S W.#$Q"3]'971.
M;W)M86Q 4&QA;F50<FEM0%)A>71R86-E<D! 54%%/T%6=F5C=&]R,T R0$%!
M5C,R0$!:#0H),3,X,#8W- D_1V5T3F]R;6%L0%-P:&5R94!287ET<F%C97) 
M0%5!13]!5G9E8W1O<C- ,D!!058S,D! 6 at T*"3DX.#4Y. D_4F%Y=')A8V5 
M16YG:6YE0%)A>71R86-E<D! 44%%4$%64')I;6ET:79E0#) 04%64F%Y0#) 
M04%6=F5C=&]R,T R0$A-04%-0%H-"BTM+2TM+2TM+2TM+2TM+2TM+0T*"2 @
M-38Q"5]7:6Y-86EN0#$V#0H_4F5N9&5R0$5N9VEN94!287ET<F%C97) 0%%!
M15].6%H)-38Q"3(P.3 X,S0X,# R, DQ,C,Y,C(T-# P#0H)-#<U,C at X"3\_
M,%)A>4!287ET<F%C97) 0%%!14!!059V96-T;W(S0#% ,$!:#0H)-#<U,C at X
M"3]287ET<F%C94!%;F=I;F5 4F%Y=')A8V5R0$!104500590<FEM:71I=F5 
M,D!!059287E ,D!!059V96-T;W(S0#) 2$U!04U 6 at T*+2TM+2TM+2TM+2TM
M+2TM+2TM#0H)(" @-3 )/TEN:71#:&%R<V5T0%-U<F9A8V5 4F%Y=')A8V5R
M0$!104586%H-"C]3971#:&%R0%-U<F9A8V5 4F%Y=')A8V5R0$!104582%!!
M1# P,#! 6 at DU, DQ,C0Q- at DQ,C0Q- at T*+2TM+2TM+2TM+2TM+2TM+2TM#0H)
M(" @-C()/TEN:7138V5N94!38V5N94!287ET<F%C97) 0%%!15A86 at T*/U-E
M=$YA;65 4')I;6ET:79E0%)A>71R86-E<D! 44%%6%!!1$!:"38R"3<Y,C,R
M"3<Y,C,R#0HM+2TM+2TM+2TM+2TM+2TM+2T-"@D@(" @,0E?5VEN36%I;D Q
M- at T*/U-E=%1A<F=E=$!%;F=I;F5 4F%Y=')A8V5R0$!104584$%)2$A 6 at DQ
M"3(P- DR,#0-"BTM+2TM+2TM+2TM+2TM+2TM+0T*"2 @(#$U"5]7:6Y-86EN
M0#$V#0H)(#$T-S$)/U=N9%!R;V- 0%E'2E!!6$E)2D!:#0H).3$V-CD)/T1R
M87=7:6YD;W= 0%E!6%A:#0H_5VYD4')O8T! 64=*4$%824E*0%H).3,Q-34)
M,30S-S X.3 at V.34P"3$S-S4T-C<Y,C,T. T*"2 Q-#<Q"3]7;F10<F]C0$!9
M1TI005A)24I 6 at T*+2TM+2TM+2TM+2TM+2TM+2TM#0I?5VEN36%I;D Q- at DP
M"3<X-S0Q-#$Q-S<V, at DS-S0W-3(S,38-"@D@(" Q-0D_5VYD4')O8T! 64=*
M4$%824E*0%H-"@D@(" @,0D_/S!3=7)F86-E0%)A>71R86-E<D! 44%%0$A(
M0%H-"@D@(" @,0D_0VQE87) 4W5R9F%C94!287ET<F%C97) 0%%!15A)0%H-
M"@D@(" @,0D_26YI=$-H87)S971 4W5R9F%C94!287ET<F%C97) 0%%!15A8
M6 at T*"2 @(" R"3]0<FEN=$!3=7)F86-E0%)A>71R86-E<D! 44%%6%!!1$A(
M24!:#0H)(" @(#$)/S\P16YG:6YE0%)A>71R86-E<D! 44%%0%A:#0H)(" @
M(#$)/TEN:7138V5N94!38V5N94!287ET<F%C97) 0%%!15A86 at T*"2 @(" Q
M"3]3971487)G971 16YG:6YE0%)A>71R86-E<D! 44%%6%!!24A(0%H-"@D@
M(" @,0D_26YI=%)E;F1E<D!%;F=I;F5 4F%Y=')A8V5R0$!104586%H-"@D@
M(#4V,0D_4F5N9&5R0$5N9VEN94!287ET<F%C97) 0%%!15].6%H-"@DX.#(P
M.0D_1')A=U=I;F1O=T! 64%86%H-"@T*/3T]/3T]/3T at 5&EM97(@27,@,C at P
M-C0P,# P,"!4:6-K<R]396,L(%1I;65S(&%R92!I;B!-:6-R;W-E8W,@/3T]
M/3T]/3T-"@T*("!.=6T@(" @(" @(" @5')E92 @(" @(" @1G5N8R @(" @
M(" @4&5R#0H@($-A;&QS(" @(" @("!4:6UE(" @(" @("!4:6UE(" @(" @
M("!#86QL#0H-"B @.#@R,#D@(" R,#4Y,S4R,C0@(" Q-38Y,C<S-C@@(" @
M(" @(#$W-SD@(" @('9O:60 at 8V1E8VP@1')A=U=I;F1O=R at I#0HQ-#8S.#@V
M(" @,C$V-S$Q,#@X(" @(#8R.#$S-C4Q(" @(" @(" @(#0R(" @("!0<FEM
M:71I=F4Z.E)A>71R86-E<B J<WES8V%L;"!287ET<F%C97(Z.D5N9VEN93HZ
M4F%Y=')A8V4H4F%Y.CI287ET<F%C97(@)BQV96-T;W(S.CI287ET<F%C97(@
M)BQI;G0 at +&9L;V%T("QF;&]A=" F*0T*(" Y,S$U-2 @(" U,3(P-S4Y,B @
M(" T.3 Q,3 at R-R @(" @(" @(#4R-B @(" @;&]N9R!S=&1C86QL(%=N9%!R
M;V,H=F]I9" J+'5N<VEG;F5D("QU;G-I9VYE9" L;&]N9R I#0HQ.34U,3$T
M,38@(" @,3 Q-C<X-C0@(" @,3 Q-C<X-C0@(" @(" @(" @(# @(" @(&EN
M="!S>7-C86QL(%)A>71R86-E<CHZ4W!H97)E.CI);G1E<G-E8W0H4F%Y.CI2
M87ET<F%C97(@)BQF;&]A=" F*0T*,3 X-C0T-#0@(" @(" V,3(Y,S,@(" @
M(" V,3(Y,S,@(" @(" @(" @(# @(" @(&EN="!S>7-C86QL(%)A>71R86-E
M<CHZ4&QA;F50<FEM.CI);G1E<G-E8W0H4F%Y.CI287ET<F%C97(@)BQF;&]A
M=" F*0T*(" @(#4V,2 @(" W-#4P,C,X," @(" @(#0T,34W," @(" @(" @
M(#<X-R @(" @8F]O;'-Y<V-A;&P at 4F%Y=')A8V5R.CI%;F=I;F4Z.E)E;F1E
M<B at I#0HT,SDQ,C$X(" @(" @,C U,C X(" @(" @,C U,C X(" @(" @(" @
M(" P(" @("!S>7-C86QL(%)A>71R86-E<CHZ4F%Y.CI287DH=F5C=&]R,SHZ
M4F%Y=')A8V5R("8L=F5C=&]R,SHZ4F%Y=')A8V5R("8I#0H@(" @(" Q(" @
M,C at P-3<X,# V(" @(" @,3,S-3,T(" @(" @,3,S-3,T(" @("!?5VEN36%I
M;D Q- at T*,CDR-S,S,B @(" @(#$S,34W.2 @(" @(#$S,34W.2 @(" @(" @
M(" @," @(" @:6YT('-Y<V-A;&P at 4F%Y=')A8V5R.CI3<&AE<F4Z.D=E=%1Y
M<&4H*0T*,3,X,#8W-" @(" @(" W-S(W,R @(" @(" W-S(W,R @(" @(" @
M(" @," @(" @=F5C=&]R,SHZ4F%Y=')A8V5R('-Y<V-A;&P at 4F%Y=')A8V5R
M.CI3<&AE<F4Z.D=E=$YO<FUA;"AV96-T;W(S.CI287ET<F%C97(@)BD-"C$S
M,#<X,3$@(" @(" @-3(R.3@@(" @(" @-3(R.3@@(" @(" @(" @(# @(" @
M('9E8W1O<C,Z.E)A>71R86-E<B!S>7-C86QL(%)A>71R86-E<CHZ4&QA;F50
M<FEM.CI'971.;W)M86PH=F5C=&]R,SHZ4F%Y=')A8V5R("8I#0H@(" @(" Q
M(" @(" @(" R-C8T(" @(" @(" R-C8T(" @(" @(" R-C8T(" @("!V;VED
M('-Y<V-A;&P at 4F%Y=')A8V5R.CI3=7)F86-E.CI#;&5A<BAU;G-I9VYE9" I
M#0H@(" @(" Q(" @(" @(" @,3(U(" @(" @(" @(#DT(" @(" @(" @(#DT
M(" @("!V;VED('-Y<V-A;&P at 4F%Y=')A8V5R.CI38V5N93HZ26YI=%-C96YE
M*"D-"B @(" @(#$@(" @(" @(" @-C0@(" @(" @(" @-C0@(" @(" @(" @
M-C0@(" @('-Y<V-A;&P at 4F%Y=')A8V5R.CI3=7)F86-E.CI3=7)F86-E*&EN
M=" L:6YT("D-"B @(" @-C(@(" @(" @(" @,C@@(" @(" @(" @,C@@(" @
M(" @(" @(# @(" @('9O:60@<WES8V%L;"!287ET<F%C97(Z.E!R:6UI=&EV
M93HZ4V5T3F%M92AC:&%R("HI#0H@(" @(" Q(" @(" @(" @(#(Y(" @(" @
M(" @(#(U(" @(" @(" @(#(U(" @("!V;VED('-Y<V-A;&P at 4F%Y=')A8V5R
M.CI3=7)F86-E.CI);FET0VAA<G-E="@I#0H@(" @(" Q(" @(" @(" @(" U
M(" @(" @(" @(" U(" @(" @(" @(" U(" @("!V;VED('-Y<V-A;&P at 4F%Y
M=')A8V5R.CI%;F=I;F4Z.DEN:71296YD97(H*0T*(" @(" @,B @(" @(" @
M(" @-2 @(" @(" @(" @-2 @(" @(" @(" @,B @(" @=F]I9"!S>7-C86QL
M(%)A>71R86-E<CHZ4W5R9F%C93HZ4')I;G0H8VAA<B J+&EN=" L:6YT("QU
M;G-I9VYE9" I#0H@(" @(#4P(" @(" @(" @(" T(" @(" @(" @(" T(" @
M(" @(" @(" P(" @("!V;VED('-Y<V-A;&P at 4F%Y=')A8V5R.CI3=7)F86-E
M.CI3971#:&%R*&EN=" L8VAA<B J+&-H87(@*BQC:&%R("HL8VAA<B J+&-H
M87(@*BD-"B @(" @-C0@(" @(" @(" @(#$@(" @(" @(" @(#$@(" @(" @
M(" @(# @(" @('-Y<V-A;&P at 4F%Y=')A8V5R.CI-871E<FEA;#HZ36%T97)I
M86PH*0T*(" @(" @,2 @(" @(" @(" @," @(" @(" @(" @," @(" @(" @
M(" @," @(" @<WES8V%L;"!287ET<F%C97(Z.D5N9VEN93HZ16YG:6YE*"D-
M"B @(" @(#$@(" @(" @(" @(# @(" @(" @(" @(# @(" @(" @(" @(# @
M(" @('9O:60@<WES8V%L;"!287ET<F%C97(Z.D5N9VEN93HZ4V5T5&%R9V5T
M*'5N<VEG;F5D("HL:6YT("QI;G0@*0T*(" @(" @,B @(" @(" @(" @," @
M(" @(" @(" @," @(" @(" @(" @," @(" @=F]I9"!S>7-C86QL(%)A>71R
>86-E<CHZ4')I;6ET:79E.CI,:6=H="AB;V]L*0T*
`
end



More information about the Digitalmars-d-learn mailing list