BorlandTalk.com Forum Index BorlandTalk.com
Borland discussion newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Fastcode Library Suggestions Thead
Goto page 1, 2  Next
 
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Language BASM
View previous topic :: View next topic  
Author Message
Charalabos Michael
Guest





PostPosted: Tue May 08, 2007 4:06 am    Post subject: Fastcode Library Suggestions Thead Reply with quote



Hello everybody,
Please post here you're suggestions/improvents you like
to see in the future versions Fastcode Library.

Thank you

--
Charalabos Michael - [Creation Power] - http://www.creationpower.gr
Back to top
Richard Jenkins
Guest





PostPosted: Tue May 08, 2007 5:38 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote



More AnsiString functions supporting the current locale. I may be wrong,
but it seems that the only string functions that were optimized for speed
were those not involving support for current locale. (Uppercase, Lowercase,
CompareStr, CompareText, but not AnsiLowercase, AnsiUppercase,
AnsiCompareText, nor AnsiCompareStr). Those are essential when you want to
develop applications that analyze text that are not restricted to English.
They are also much slower than the ones that have been optimized, so my
guess is that the gain in speed could be much higher.



"Charalabos Michael" <chmichael@_-_no_-_creationpower_-_spam_-_.com> wrote
in message news:463fb1aa$1 (AT) newsgroups (DOT) borland.com...
Quote:
Hello everybody,
Please post here you're suggestions/improvents you like
to see in the future versions Fastcode Library.

Thank you

--
Charalabos Michael - [Creation Power] - http://www.creationpower.gr
Back to top
Tommi Prami
Guest





PostPosted: Tue May 08, 2007 8:12 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote



1. Format* functions. Those are quite much used. Maybe good candidate,
not sure which would be most important
2. Library build in way that functions could use internally the winner
of other challenge
3. Anything that could speed up TObject descendants in generally. Might
be one of the biggest boost out there if could speed up general object
handling. Maybe by adding some smar data structures undet hte hood (if
possible) to speed up is/as operatios etc...
4. StingList/TList speed ups, whole VCL-uses those...

-Tommi Prami-

Charalabos Michael wrote:
Quote:
Hello everybody,
Please post here you're suggestions/improvents you like
to see in the future versions Fastcode Library.

Thank you
Back to top
Bart van der Werf
Guest





PostPosted: Tue May 08, 2007 8:12 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

"Charalabos Michael" <chmichael@_-_no_-_creationpower_-_spam_-_.com> wrote
in message news:463fb1aa$1 (AT) newsgroups (DOT) borland.com...
Quote:
Hello everybody,
Please post here you're suggestions/improvents you like
to see in the future versions Fastcode Library.

Thank you

TObject
TList
TStringList
Back to top
Ryan J. Mills
Guest





PostPosted: Tue May 08, 2007 6:38 pm    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

As suggested by some of the others,

For some class optimizations I would suggest:

TStringList
TList

As for function/procedure optimizations I would suggest

Format (String formatter)
All varients of StrToInt (StrToFloat etc)
All varients of IntToStr (FloatToStr etc)

Ryan.




On Tue, 08 May 2007 02:06:14 +0300, Charalabos Michael
<chmichael@_-_no_-_creationpower_-_spam_-_.com> wrote:

Quote:
Hello everybody,
Please post here you're suggestions/improvents you like
to see in the future versions Fastcode Library.

Thank you
Back to top
Dennis
Guest





PostPosted: Tue May 08, 2007 9:36 pm    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Hi

< but not AnsiLowercase, AnsiUppercase, AnsiCompareText, nor AnsiCompareStr.

I agree, but that is actually suggestions for challenges.

http://fastcode.sourceforge.net/challenge_content/coming_later.html

Best regards
Dennis Kjaer Christensen
Back to top
Dennis
Guest





PostPosted: Tue May 08, 2007 9:42 pm    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Hi

All of you are suggesting new challenges. Remember that nothing gets into
the library that is not the results of a challenge. Because of that the
library can only contain existing functions that are target winners. Only
usage modes (patching, direct calling, conditional compilation etc.) is
defined by the library. The library must simply have the latest target
winners from all challenges 52 * 16 ( for FP *3) = 832+ functions.

Best regards
Dennis Kjaer Christensen
Back to top
Anders Isaksson
Guest





PostPosted: Tue May 08, 2007 9:43 pm    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

I don't have any special function to suggest for the moment, but I would
like to recommend those giving suggestions to *first* profile their program
to see where the bottlenecks are, rather than going by 'gut-feeling'. It's
no point doing Fastcode work for something that isn't a problem, even if
it's slow.

With Eric Grange's Sampling profiler statistics can be sampled from any
Delphi program without too much intervention from the profiler. Maybe
someone can chime in and give the download location for the latest version
of this invaluable tool.

--
Anders Isaksson, Sweden
BlockCAD: http://web.telia.com/~u16122508/proglego.htm
Gallery: http://web.telia.com/~u16122508/gallery/index.htm
Back to top
Charalabos Michael
Guest





PostPosted: Wed May 09, 2007 4:13 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Hello Tommi,

Quote:
1. Format* functions. Those are quite much used. Maybe good candidate,
not sure which would be most important

I agree on the format challenge. Someone can start it ? (Dennis ?)

Quote:
2. Library build in way that functions could use internally the winner
of other challenge

I don't understand this part.

Quote:
3. Anything that could speed up TObject descendants in generally. Might
be one of the biggest boost out there if could speed up general object
handling. Maybe by adding some smar data structures undet hte hood (if
possible) to speed up is/as operatios etc...

I think FastObj is extacly doing this but i think it's
not updated .... (Can't include it in the Library because
it doesn't meet the official Fastcode specs)

Quote:
4. StingList/TList speed ups, whole VCL-uses those...

I think dennis is the proper person to answer this question ...
I Agree on a StringList challenge should be made too.
(Actually replacing TStringlist with a Hashed StringList)

--
Charalabos Michael - [Creation Power] - http://www.creationpower.gr
Back to top
Charalabos Michael
Guest





PostPosted: Wed May 09, 2007 4:14 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Hello Ryan,

Quote:
Format (String formatter) All varients of StrToInt (StrToFloat
etc) All varients of IntToStr (FloatToStr etc)

FmtBuf is frequently used by most 3rd party VCL components.
Making a challenge for better speed of FmtBuf it will speed
up a lot our applications.

--
Charalabos Michael - [Creation Power] - http://www.creationpower.gr
Back to top
Jouni Turunen
Guest





PostPosted: Wed May 09, 2007 8:12 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Quote:

With Eric Grange's Sampling profiler statistics can be sampled from any
Delphi program without too much intervention from the profiler. Maybe
someone can chime in and give the download location for the latest version
of this invaluable tool.


Link to Sampling profiler is here : http://www.fastcodeproject.org/
http://fastcode.sourceforge.net/FastcodeFileDownloads/SamplingProfiler-1.4.4.zip

Regards,
Jouni

--
The Fastcode Project: http://www.fastcodeproject.org/
Back to top
Tommi Prami
Guest





PostPosted: Wed May 09, 2007 3:37 pm    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Quote:
2. Library build in way that functions could use internally the winner
of other challenge

I don't understand this part.

Like:

function ABC_123_Pos(...): Integer
begin
Result := Fastcode.PosEx(...);
end;

Now challenges don't allow (for competetive reasons) to call other
functions internally even it would be smart to do so in Library.

-TP-
Back to top
Charalabos Michael
Guest





PostPosted: Thu May 10, 2007 12:13 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Hello Tommi,

Quote:
Now challenges don't allow (for competetive reasons) to call other
functions internally even it would be smart to do so in Library.

Well, a prefer to waste a few KBs for a better code
organization in the library.

--
Charalabos Michael - [Creation Power] - http://www.creationpower.gr
Back to top
Tommi Prami
Guest





PostPosted: Thu May 10, 2007 8:11 am    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Quote:
Now challenges don't allow (for competetive reasons) to call other
functions internally even it would be smart to do so in Library.

Well, a prefer to waste a few KBs for a better code
organization in the library.

Hmm... I am not sure that I understand. You prefer which way. Current
B&V type of stuff or my suggestion. I know that maintaining the library
is not easy task, but I am willing to help if I just can...

This could easily be done by Function authors by adding

{$IFNDEF FASTCODE_LIBRARY}
function MyPosEx();
....
{ENDIF}

procedure MySomeStringProc(...);
begin
...
{$IFDEF FASTCODE_LIBRARY}
Fastcode.PosEx(...);
{$ELSE
MyPosEx(...);
{$ENDIF}
...
end;


If the person contributing to the challenge would like to contribute to
the library also this would lead to better quality library IMHO. Because
in some platform there could be (in this case PosEx) much superior PosEx
function. Like seen some very different results in some functions on
VIA-processor, basic RTL function, don't remember which one, was fastest
of 'em all ?!.

-TP-
Back to top
Dennis
Guest





PostPosted: Thu May 10, 2007 10:14 pm    Post subject: Re: Fastcode Library Suggestions Thead Reply with quote

Hi Tommi

I looks to me like you are not familiar with our library/targets and
structure in general.

Quote:
Hmm... I am not sure that I understand. You prefer which way. Current
B&V type of stuff or my suggestion. I know that maintaining the library
is not easy task, but I am willing to help if I just can...

B&V stuff ?

The library contains all our winning functions and nothing else. Non
Fastcode functions cannot be in a Fastcode library and including loosers
makes no sense.

Quote:
If the person contributing to the challenge would like to contribute to
the library also this would lead to better quality library IMHO. Because

All functions are in the challenge and the best goes into the library. No
person participates in a challenge with any functions that will not go into
the library if they are winners.

Quote:
in some platform there could be (in this case PosEx) much superior PosEx

Not really.

Quote:
function. Like seen some very different results in some functions on
VIA-processor, basic RTL function, don't remember which one, was fastest
of 'em all ?!.

We need some proofs ;-)

VIA is supported through our Blended targets. Potentially there exists a
faster function on a given CPU that does not have its own target. We only
have 6 CPU targets. VIA is not included because it is used much less than
the other CPU's. We could have more CPU targets, but we can barely get
benchmark results for the 6 we have and it would also make it much harder to
maintain the library and it would be very big also. The Blended target
winners are very often the same as the winners for the CPU targets and they
are never much slower. The gain of adding a VIA target will be very low and
IMHO not worth.the effort.

Best regards
Dennis Kjaer Christensen
Back to top
Display posts from previous:   
Post new topic   Reply to topic    BorlandTalk.com Forum Index -> Delphi Language BASM All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.