language benchmarks (Was: Re: Now the computer speaks better Greek than I do!)

V13 v13 at priest.com
Sun Aug 25 20:02:00 EEST 2002


On Sunday 25 August 2002 14:57, Nikos Kanellopoulos wrote:

> Οι Kernighan & Pike στο Practice of Programming, γράφουν ένα πρόγραμμα
> σε πολλές γλώσσες. Είναι μια υλοποίηση του αλγορίθμου Markov chain για την
> παραγωγή τυχαίου κειμένου, που μιμείται το στυλ κάποιου άλλου που του
> δίνεις ως input. Επειδή η σελίδα του βιβλίου έχει κάποιο πρόβλημα, πάρε τα
> από εδώ: www.himaira.net/markov.tgz
> Πρόσεξε, ότι η C++ παραμένει πιο αργή αφού στείλεις το output στο
> /dev/null, αλλιώς πέφτει γέλιο.
>
> Π.χ.
> $ time ./markov++ < psalms-nolines.txt > /dev/null
> $ time java Markov < psalms-nolines.txt > /dev/null

Basika.. basinaki...

To paradeigma ayto pistevo oti einai toso atyxes, oso to na sygkrineis se 
taxytita ena programma poy doylevei se dos kai trabaei mia grammi se analysi 
320x200 b/w , me ena poy doylevei kano apo linux to opoio trexei 1238623894 
daimones oi opoioi exoyn kapoio N forto kai trabaei mia grammi se analysh 
1233234x23468972963 me 32 bit xroma. (San grammi orizetai h diagonios tis 
othonis)

Idoy kai ta apotelesmata apo to profiling (petsokomena ligo):

Arxika apo thn C:

Each sample counts as 0.01 seconds.
  %   cumulative   self              self     total
 time   seconds   seconds    calls  us/call  us/call  name
 75.00      0.03     0.03    47440     0.63     0.63  lookup
 25.00      0.04     0.01        1 10000.00 13006.32  generate
  0.00      0.04     0.00    65168     0.00     0.00  emalloc
  0.00      0.04     0.00    42686     0.00     0.63  add
  0.00      0.04     0.00    42685     0.00     0.00  estrdup
  0.00      0.04     0.00        1     0.00 26993.04  build
  0.00      0.04     0.00        1     0.00     0.00  setprogname


kai apo tin C++:

Each sample counts as 0.01 seconds.
  %   cumulative   self              self     total
 time   seconds   seconds    calls  us/call  us/call  name
 48.57      0.51     0.51   833775     0.61     0.67  bool std::lexicograph$
 26.67      0.79     0.28    52686     5.31    14.56  std::_Rb_tree<std::de$
  4.76      0.84     0.05  1901351     0.03     0.03  unsigned const& std::$
  2.86      0.87     0.03    22482     1.33     4.90  std::_Rb_tree<std::de$
  1.90      0.89     0.02    42688     0.47     0.47  std::deque<std::strin$
  1.90      0.91     0.02    22482     0.89     0.89  void std::__destroy_a$
  0.95      0.92     0.01   179856     0.06     0.06  std::_Deque_iterator<$
  0.95      0.93     0.01   112821     0.09     0.09  std::__simple_alloc<s$
  0.95      0.94     0.01    64874     0.15     0.15  __gnu_cxx::__normal_i$
  0.95      0.95     0.01    44966     0.22     0.22  std::_Deque_base<std:$
  0.95      0.96     0.01    44964     0.22     0.22  std::__simple_alloc<s$
  0.95      0.97     0.01    44964     0.22     0.33  std::_Deque_iterator<$
  0.95      0.98     0.01    42686     0.23     0.23  std::deque<std::strin$
  0.95      0.99     0.01    42686     0.23     0.70  std::vector<std::stri$
  0.95      1.00     0.01    32437     0.31     0.62  std::vector<std::stri$
  0.95      1.01     0.01    22482     0.44     2.23  std::_Rb_tree<std::de$
  0.95      1.02     0.01    22482     0.44     0.89  std::_Rb_tree_rebalan$
  0.95      1.03     0.01     6826     1.46     1.46  std::_Rb_tree_rotate_$
  0.95      1.04     0.01        1 10000.00 162281.95  generate(int)
  0.95      1.05     0.01                             main
  0.00      1.05     0.00    44966     0.00     0.00  std::_Deque_base<std:$
  0.00      1.05     0.00    44964     0.00     0.00  std::_Vector_base<std$
  0.00      1.05     0.00    44964     0.00     0.42  std::deque<std::strin$
  0.00      1.05     0.00    44964     0.00     0.00  std::string* std::__u$
  0.00      1.05     0.00    42686     0.00    18.42  std::map<std::deque<s$
  0.00      1.05     0.00    22483     0.00     0.00  std::__simple_alloc<s$
  0.00      1.05     0.00    22482     0.00     0.00  std::_Deque_base<std:$
  0.00      1.05     0.00    22482     0.00     0.56  std::_Rb_tree<std::de$
  0.00      1.05     0.00    22465     0.00     0.00  std::_Rb_tree_base_it$
  0.00      1.05     0.00     6847     0.00     0.00  std::_Rb_tree_rotate_$
  0.00      1.05     0.00      411     0.00     0.00  std::deque<std::strin$
  0.00      1.05     0.00      102     0.00     0.00  std::deque<std::strin$
  0.00      1.05     0.00        5     0.00     0.00  char* std::string::_S$
  0.00      1.05     0.00        2     0.00     0.00  add(std::deque<std::s$
  0.00      1.05     0.00        2     0.00 15742.71  __static_initializati$
  0.00      1.05     0.00        2     0.00     0.00  std::_Deque_base<std:$
  0.00      1.05     0.00        2     0.00     0.00  void std::__destroy_a$
  0.00      1.05     0.00        1     0.00 15742.71  _GLOBAL__D_statetab
  0.00      1.05     0.00        1     0.00 15742.71  _GLOBAL__I_statetab
  0.00      1.05     0.00        1     0.00     2.23  std::_Rb_tree<std::de$
  0.00      1.05     0.00        1     0.00 31485.43  std::_Rb_tree<std::de$

katalabaineis oti stin mia periptosi skotoneis thn myga me to xeri kai stin 
allh me pyrinikh... An thes na sygkrineis, sygkrine kati sto opoio na exeis 
tis idies dynatotites, mias kai sto parapano, oi dynatotites sto 2o programma 
einai polles parapano. Ase poy edo den ginetai sygkrisi C++ me C... kati 
tetoio tha mporoyses na to kaneis sygkrinontas p.x. ta programmata toy GNOME 
me toy KDE, mias kai ekei fainetai h diafora ths taxythtas, alla kai pali 
yparxei diafora stin eykolia anaptykshs toy kodika...

> > btw.. h C# den einai efeyresh tis mikromalakis ?
> >
> > paste apo to site ths:
> >
> > C# is a modern, object-oriented language that enables programmers to
> > quickly build a wide range of applications for the new Microsoft .NET
> > platform,
> >
> > Gia pes moy tora pos mporei kapoios oxi-ilithios na to gyrisei pros ta
> > ekei gia na grafei programmata gia kati ektos apo windows?
> >
> > <<V13>>
>
> H C# είναι  ανάλογη της Java. Ειδικά τώρα που φτιάχνονται 2
> υλοποιήσεις σε Linux.
> Εγώ δεν λέω να αφήσεις την C++ για να γράφεις C#, αλλά ο παραγκωνισμός της
> Visual Basic είναι κάτι καλό για τον πλανήτη, γιατί τον γλιτώνει από μια
> γενιά εντελώς άσχετων προγραμματιστών.

Den leo.. sygklonistikos o paragkonismos ths VB, alla pos kati tetoio mporei 
na epireasei esto kai enan o opoios den asxoleitai me windows ?

btw.. den blepo na anefera poythena tin leksi 'linux' parapano, opote den 
apantaei se kati ayto poy eipes.

<<V13>>

p.s. Nai.. To 2o paste einai apo pico, eksoy kai ta $ sto telos ths kathe 
grammis.. Min petaxei kaneis na to sxoliasei giati tha ton fao :)




More information about the Linux-greek-users mailing list