Σελίδα 1 από 2

time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Σάβ Δεκ 20, 2008 4:18 pm
από ioannidis007
Έκανα αυτό το topic για να μπορεί ο καθένας να περηφανεύεται για τη λύση του, και πόσο γρήγορη είναι κλπ. Ξεκινάω εγώ λοιπόν, με το Alexander:

Κώδικας: Επιλογή όλων

Input:
10000 12000
V

Κώδικας: Επιλογή όλων

Time:
real    0m3.354s
user    0m3.004s
sys     0m0.325s
Για να δείτε το χρόνο του προγράμματος σας, η εντολή είναι η

Κώδικας: Επιλογή όλων

$ time <command>

σε linux. Για παράδειγμα, αν το executable είναι το alexander:

Κώδικας: Επιλογή όλων

$ time ./alexander
Αν είναι το a.out:

Κώδικας: Επιλογή όλων

$ time ./a.out
κλπ...

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Σάβ Δεκ 20, 2008 6:25 pm
από stathis

Κώδικας: Επιλογή όλων

[stathis@centurion PDP21]$ gcc -Wall -O2 -static -lm -pipe -o Alexander Alexander.c
[stathis@centurion PDP21]$ cat Alexander.in
10000 12000
V

[stathis@centurion PDP21]$ time ./Alexander

real    0m0.332s
user    0m0.006s
sys     0m0.320s
Σε VMware, CentOS 5.2 με 512MB RAM, και 2 cores απ' τον Q6600.
Οπότε καταλαβαίνετε ότι υπάρχει ένα (αρκετά μεγάλο αν το μετρήσουμε σε ms) performance penalty.

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Σάβ Δεκ 20, 2008 7:53 pm
από bour1992
Ρε παιδια πως μπορω να μετρισω το χρονο μου? Δηλαδη που βαζω την εντολη $ time <command>?

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Κυρ Δεκ 21, 2008 12:57 am
από ioannidis007
Σε linux terminal, δηλαδή στη γραμμή εντολών του linux...

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Κυρ Δεκ 21, 2008 3:20 pm
από thetrojan01

Κώδικας: Επιλογή όλων

[thetrojan01@thetrojan01-labs pdp]$ time ./alex

real    0m2.122s
user    0m1.830s
sys    0m0.173s

Αυτά για την χειρότερη περίπτωση. Η λύση μου έγινε αποδεκτή από το σύστημα :D
με επεξεργαστή AMD Athlon™ 64 X2 Dual Core Processor 4800+


Εύχομαι καλή επιτυχία σε όλους όσους θα συμμετέχουν στον διαγωνισμό.

thetrojan01

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Τρί Δεκ 23, 2008 10:03 pm
από ioannidis007
Spoiler: show
Χμ... έκανες κάποιο low-level optimazation? Εγώ τα τυπώνω 2 μαζί δηλαδή:
"PV|PV|PV|...PV" αλλά μου φαίνεται αργό... Θα έπρεπε να είναι πιό γρήγορο λογικά! :?

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Τετ Δεκ 24, 2008 12:10 am
από stathis
ioannidis007 έγραψε:Χμ... έκανες κάποιο low-level optimazation? Εγώ τα τυπώνω 2 μαζί δηλαδή:
"PV|PV|PV|...PV" αλλά μου φαίνεται αργό... Θα έπρεπε να είναι πιό γρήγορο λογικά! :?
Θεωρητικά θα έχεις την διπλάσια ταχύτητα.
Ωστόσο, μπορεί να πάει ακόμη πιο γρήγορα. Για σκέψουυυ. :P

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Τετ Δεκ 24, 2008 1:11 am
από userresu
Νομίζω είναι spoiler αυτό που λέει ο ioannidis007...

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Τετ Δεκ 24, 2008 1:51 pm
από tartoufo1973

Κώδικας: Επιλογή όλων

tartoufo1973@tartoufo1973-laptop:~/Desktop$ cat Alexander.in
10000 12000
P
tartoufo1973@tartoufo1973-laptop:~/Desktop$ time ./Alexander.exec 

real	0m0.443s
user	0m0.072s
sys	0m0.368s
σε

type : Intel® Pentium® dual-core processor T2370
clock speed : 1.73 GHz
Front Side Bus : 533 MHz
2nd level cache : 1 MB

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Τετ Δεκ 24, 2008 3:33 pm
από ioannidis007
@stathis: Το σκέφτηκα αυτό που σκέφτηκες, ναι μπορεί να γίνει και να μειώσει τη ταχύτητα στο 1/4(έτσι?) αλλά βαριέμαι να το κάνω τώρα :P

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Τετ Δεκ 24, 2008 3:41 pm
από stathis
ioannidis007 έγραψε:@stathis: Το σκέφτηκα αυτό που σκέφτηκες, ναι μπορεί να γίνει και να μειώσει τη ταχύτητα στο 1/4(έτσι?) αλλά βαριέμαι να το κάνω τώρα :P
Δε ξέρω τι σκέφτηκες, αλλά λέω ναι.

Πάντως θα έχεις αποτελέσματα κοντά στα δικά μου και στον tartoufo.

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Παρ Δεκ 26, 2008 6:41 pm
από dimitris
Αυτό το θέμα πιστεύω ότι είναι ανόφελο και ανούσιο εφόσον για να μπορέσεις να καταλάβεις αν κάποια λύση είναι βέλτιστη με τον μικρότερο δυνατό χρόνο πρέπει να υπάρχει το ίδιο υλικό (hardware) και ο ίδιος compiler συγγνώμη αλλά απ'οτι κατάλαβα ψάχνουμε ψίλλους στα άχυρα και δεν βγάζουμε κανένα συμπέρασμα

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Παρ Δεκ 26, 2008 7:23 pm
από userresu
Συμφωνώ :P

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Παρ Δεκ 26, 2008 8:54 pm
από georgeha98
Μήπως ξέρει κανείς πως μετράς χρόνο σε pascal?

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Σάβ Δεκ 27, 2008 2:18 am
από dimitris
Αν έχεις Linux ή ένα συστημα Unix όπως είπε και ο Ιωαννίδης σε ένα τερματικό δίνεις την εντολή time και το εκτελέσιμο αρχείο με το πρόθεμα ./ π.χ time ./Alexander. Αυτό είναι όλο :D

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Σάβ Δεκ 27, 2008 3:06 am
από Artakserksis
Πάντως όσο να'ναι κάποια σχετική σύγκριση γίνεται να υπάρχει, ακόμα κι όταν τα tests γίνονται σε εντελώς διαφορετικά συστήματα.

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Σάβ Δεκ 27, 2008 4:19 pm
από ioannidis007
Ναι, όταν υπάρχει μια διαφορά της τάξης των 3-4 sec ξέρεις ότι ένα πρόγραμμα είναι πιό αργό από κάποιο άλλο, άσχετα με το hardware.

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Κυρ Δεκ 28, 2008 9:35 am
από chris
Στο PC (AMD phenom 64, 4 πυρήνες) μου έκανε πάνω από 5 sec, στο talos κάνει 0.000, που σημαίνει χρόνος εκτέλεσης < 0.001.

:D :D :D

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Κυρ Δεκ 28, 2008 1:22 pm
από userresu
Ναι αλλά στο talos είναι το πρώτο testcase και στο pc σου το τελευταίο :P

Re: time:"Δείξτε μας πόσο γρήγορα τρέχουν τα προγράμματά σας"

Δημοσιεύτηκε: Κυρ Δεκ 28, 2008 8:31 pm
από chris
οκ, είναι "λίγο" αργό. Λίγο.
:oops:

:roll:

;)