jstark Δημοσ. 1 Μαΐου 2014 Δημοσ. 1 Μαΐου 2014 Κατι σχετικά απλό που θα μπορούσες να κανεις, ειναι το disassembly στα assemblies που εχουν γραφτεί σε C# και δες που εχεις boxing/unboxing instructions. Αναλόγως το αποτέλεσμα, κανε καποιες διορθώσεις, αν χρειάζεται.
defacer Δημοσ. 1 Μαΐου 2014 Δημοσ. 1 Μαΐου 2014 Για παραδειγμα στις C/C++ ξερουμε οτι στη μνημη η αποθηκευση/συσχετιση των πινακων γινεται με απλα μαθηματικα παν/μιου 1ου ετους, το "row major order". Στη C# δεν εχω βρει αντιστοιχη πληροφορια. Δεν έχει να κάνει με τη C# αλλά με το CLI. http://www.ecma-international.org/publications/standards/Ecma-335.htm I.8.9.1 Array types Array elements shall be laid out within the array object in row-major order (i.e., the elements associated with the rightmost array dimension shall be laid out contiguously from lowest to highest index). The actual storage allocated for each array element can include platform-specific padding. (The size of this storage, in bytes, is returned by the sizeof instruction when it is applied to the type of that array’s elements.) Αλλά δε θα πω περισσότερα γιατί το παπί έχει δίκιο. 2
Star_Light Δημοσ. 1 Μαΐου 2014 Δημοσ. 1 Μαΐου 2014 Σας τρολαρει ο δελαπορτας ρεεεεε χαχαχα λες να κρυβεται ο δελαπόρτας απο πίσω? υποπτο αυτο το "ο κωδικας θελω να μεινει κλειστος" Ναι και θεωρω οτι ειναι πολυ φθηνα και με καθολου βαθος. Τα πιο σημαντικα "optimization" που ανεφεραν ηταν να μη σηκωνω μεγαλα συνολα απο NoSQL στη μνημη (LOL - φοβερο και τρομερο και καθολου αυτονοητο - ξανα LOL), και να μη κανω πολλα loops (αλλα να μη πολυφοβαμαι γιατι θα με τακτοποησει η .ΝΕΤ - Μας κοροϊδευει ετσι? ). ..και μεσα σε πολλα αλλα που ελεγε, εγω λεω: Τρεχα γυρευε... Αρα, πολυ φθηνα και με καθολου βαθος!!!!! Α!!! και το αστειο για να μη το ξεχασω, ουτε καν αναφορα σε pointers στα βιβλια. Ειναι λεει evil οι pointers και στη C# μπορεις να βρεις αλλους τρόπους γιατι δε σου πολυ χρειαζονται, ειναι και unsafe........ Δικο μου προβλημα ρε μεγαλε. Θα τους κανω safe! Υ.Γ: Εδω ειναι που χτυπαγα το κεφαλι μου με σφυρι! Γι αυτο ρωταω απελπισμενα. Ξερει κανεις καλες πρακτικες σε C#? Γραφεις 12 χρονια επαγγελματικό κώδικα και δεν ξέρεις καλές πρακτικές ειτε σε C# ειτε σε οποιαδήποτε?
ufg Δημοσ. 1 Μαΐου 2014 Μέλος Δημοσ. 1 Μαΐου 2014 Γραφεις 12 χρονια επαγγελματικό κώδικα και δεν ξέρεις καλές πρακτικές ειτε σε C# ειτε σε οποιαδήποτε? υποπτο αυτο το "ο κωδικας θελω να μεινει κλειστος" Ειπα οτι δεν ξερω για τη C# καποια ποιο ψαγμενα optimizations. Απο που προκυπτει οτι δεν ξερω για τις αλλες γλωσσες; Ειμαι indie game developer απλα εκανα παιχνιδια 2D και σε αλλη κουλτουρα και το 3D, ειδικα με C# στα UI ειναι κατι νεο. Θα βγαλω λεφτα απο αυτο. Θελω να μεινει κλειστος. Που ειναι το κακο; @defacer, ευχαριστω για το CLI. Δεν ειμαι .ΝΕΤας γενικα απο οτι καταλαβατε. Σας τρολαρει ο δελαπορτας ρεεεεε Τι ειναι αυτο, συνθηματικο;
παπι Δημοσ. 2 Μαΐου 2014 Δημοσ. 2 Μαΐου 2014 Συνθηματικο ειναι το 500mb κωδικα. (btw ρε παλικαρι, κανενας δεν το σχολιασε αυτο; 500μβ ειναι καπου στα 5εκ με 20εκ γραμμες ) Και η επιβεβαιωση το διπλο LOL με caps. 1
gon1332 Δημοσ. 2 Μαΐου 2014 Δημοσ. 2 Μαΐου 2014 Συνθηματικο ειναι το 500mb κωδικα. (btw ρε παλικαρι, κανενας δεν το σχολιασε αυτο; 500μβ ειναι καπου στα 5εκ με 20εκ γραμμες ) Και η επιβεβαιωση το διπλο LOL με caps. Φωτιές σπέρνεις.. Ποιος είσαι; Ο αστυνόμος Σαΐνης;
ufg Δημοσ. 2 Μαΐου 2014 Μέλος Δημοσ. 2 Μαΐου 2014 Συνθηματικο ειναι το 500mb κωδικα. (btw ρε παλικαρι, κανενας δεν το σχολιασε αυτο; 500μβ ειναι καπου στα 5εκ με 20εκ γραμμες ) Και η επιβεβαιωση το διπλο LOL με caps. Με παρεξηγησες φιλε. 500mb εννοω το project που εχει μεσα εικονες, μουσικες, διαφορα αρχεια και τα λοιπα. Ο κωδικας ποσο μεγαλος ειναι δε ξερω και δε με νοιαζει. Το LOL και το αστειο δε το καταλαβα αρα θεωρω οτι ειναι καποιο αστειο εδω δικο σας. Ευχαριστω για τη βοηθεια.
sonyxp Δημοσ. 2 Μαΐου 2014 Δημοσ. 2 Μαΐου 2014 Εχω βελτιστοποιησει παρα πολυ το C/C++ κομματι μιας και γραφω 12 χρονια σε αυτες τις γλωσσες επαγγελματικα. Στη C# ομως οχι. (Ενταξει και καποια πραγματα σε C++ για το DirectX). Ειμαι λοιπον σχεδον σιγουρος οτι τα προβληματα ειναι σε C#. Τέλος πάντων... (ήθελα να σου πω ότι δεν μου κάθεται καλά το ότι κάποιος ξέρει πολύ καλά C/C++ και ζορίζεται με C#) Όσο για το τοπικ σου, για να κάνεις Optimization πρέπει να γνωρίζεις το θεωρητικό υπόβαθρο κάποιον πραγμάτων... οπότε (αν δεν το έχεις κάνει) ξεκίνα λίγο την θεωρία και άσε τον κώδικα στην άκρη. Επίσης τράβα καμιά σύγκριση με άλλες μηχανές να δεις ρε παιδί μου τι γραφικά βγάζεις, τι ταχύτητες βγάζεις (fps) και διάφορα άλλα... Φτιάξε δηλαδή ολόιδια παραδείγματα-παιχνίδια και δες τι έχεις κάνει... Προσωπικά επειδή ασχολούμαι με το Unity3D (είναι και η μόνη μηχανή που σου δίνει την δυνατότητα να γράφεις κώδικα σε αντίθεση με τις άλλες που είναι dnd) θα σου πρότεινα να φτιάξεις κάτι πολύ απλό ΑΛΛΑ ΑΠΑΙΤΗΤΙΚΟ και να συγκρίνεις την μηχανή σου με το Unity3D. *ΑΛΛΑ ΑΠΑΙΤΗΤΙΚΟ = εμφάνισε πολλά αντικείμενα σε μια περιοχή για να δεις τι FPS βγάζεις (την μια σταδιακά την άλλη μονομιάς) 1
migf1 Δημοσ. 2 Μαΐου 2014 Δημοσ. 2 Μαΐου 2014 Με παρεξηγησες φιλε. 500mb εννοω το project που εχει μεσα εικονες, μουσικες, διαφορα αρχεια και τα λοιπα. Ο κωδικας ποσο μεγαλος ειναι δε ξερω και δε με νοιαζει. Το LOL και το αστειο δε το καταλαβα αρα θεωρω οτι ειναι καποιο αστειο εδω δικο σας. Ευχαριστω για τη βοηθεια. Εγώ πάντως εξακολουθώ να είμαι πολύ περίεργος να μάθω γιατί χρειάζεται χειροκίνητο optimization το front-end που είναι γραμμένο σε C# και προορίζεται αποκλειστικά για Windows 7/8 (δηλαδή εξ' ορισμού για δυνατά μηχανάκια και όπως μας είπες με πολύ optimized μηχανή κάτω από το front-end). Αν όντως υπάρχουν σοβαροί λόγοι για κάτι τέτοιο σίγουρα θα αφορούν πολύ λίγα σημεία του front-end, κι αν όντως έχεις 12 χρόνια επαγγελματικής εμπειρίας με C και C++ δεν καταλαβαίνω γιατί δεν τα κάνεις αυτά τα σημεία σε μια από αυτές τις γλώσσες.
παπι Δημοσ. 2 Μαΐου 2014 Δημοσ. 2 Μαΐου 2014 κι αν όντως έχεις 12 χρόνια επαγγελματικής εμπειρίας με C και C++ Και ομως, πρεπει να τα εχει.
Star_Light Δημοσ. 3 Μαΐου 2014 Δημοσ. 3 Μαΐου 2014 Ειπα οτι δεν ξερω για τη C# καποια ποιο ψαγμενα optimizations. Απο που προκυπτει οτι δεν ξερω για τις αλλες γλωσσες; Ειμαι indie game developer απλα εκανα παιχνιδια 2D και σε αλλη κουλτουρα και το 3D, ειδικα με C# στα UI ειναι κατι νεο. Θα βγαλω λεφτα απο αυτο. Θελω να μεινει κλειστος. Που ειναι το κακο; @defacer, ευχαριστω για το CLI. Δεν ειμαι .ΝΕΤας γενικα απο οτι καταλαβατε. Τι ειναι αυτο, συνθηματικο; Εμεις γιατι να μη βγάλουμε αμα σε βοηθήσουμε? Που ειναι το κακό? Τέλος πάντων... (ήθελα να σου πω ότι δεν μου κάθεται καλά το ότι κάποιος ξέρει πολύ καλά C/C++ και ζορίζεται με C#) Όσο για το τοπικ σου, για να κάνεις Optimization πρέπει να γνωρίζεις το θεωρητικό υπόβαθρο κάποιον πραγμάτων... οπότε (αν δεν το έχεις κάνει) ξεκίνα λίγο την θεωρία και άσε τον κώδικα στην άκρη. Επίσης τράβα καμιά σύγκριση με άλλες μηχανές να δεις ρε παιδί μου τι γραφικά βγάζεις, τι ταχύτητες βγάζεις (fps) και διάφορα άλλα... Φτιάξε δηλαδή ολόιδια παραδείγματα-παιχνίδια και δες τι έχεις κάνει... Προσωπικά επειδή ασχολούμαι με το Unity3D (είναι και η μόνη μηχανή που σου δίνει την δυνατότητα να γράφεις κώδικα σε αντίθεση με τις άλλες που είναι dnd) θα σου πρότεινα να φτιάξεις κάτι πολύ απλό ΑΛΛΑ ΑΠΑΙΤΗΤΙΚΟ και να συγκρίνεις την μηχανή σου με το Unity3D. *ΑΛΛΑ ΑΠΑΙΤΗΤΙΚΟ = εμφάνισε πολλά αντικείμενα σε μια περιοχή για να δεις τι FPS βγάζεις (την μια σταδιακά την άλλη μονομιάς) xaxa κατα σύμπτωση σε κανέναν εδω μέσα δεν κάθισε καλά αυτο. 1
sonyxp Δημοσ. 4 Μαΐου 2014 Δημοσ. 4 Μαΐου 2014 Εμεις γιατι να μη βγάλουμε αμα σε βοηθήσουμε? Που ειναι το κακό? xaxa κατα σύμπτωση σε κανέναν εδω μέσα δεν κάθισε καλά αυτο. Κοίτα... μπορεί κάποιος ρε παιδί μου να γνωρίζει-δουλεύει καλά τις δυνατότητες της C/C++ αλλά δεν σημαίνει ότι γνωρίζει και Opengl/Dx. Γενικά για να δουλέψεις OpenGL πρέπει να γνωρίζεις και θεωρητικά πράγματα, όχι μόνο να γράφεις κώδικα... πχ : πως θα φτιάξεις μια συνάρτηση-κλάση που κάνει parse .obj/.fbx μοντέλα; τα αρχεία αυτά έχουν κάτι νούμερα και σύμβολα μέσα, τι σημαίνουν; πρέπει να ξέρεις κάποια πράγματα... Ο φίλος μας είπε ότι δουλεύει σε C# Dx , οπότε αυτό σημαίνει ότι αυτόματα έχει 1002 πράγματα έτοιμα. (με επιφύλαξη, δεν ξέρω τι παρέχει η C# Dx) Θα πρέπει ο φίλος μας λοιπόν να δουλέψει σε πολύ χαμηλότερο επίπεδο όπου ούτε καν συνάρτηση για Import 3D Model δεν έχει η Opengl/dx... πόσο μάλλον άλλα πράγματα όπως Physics-colliders lighting shading ... Όλα αυτά πρέπει να τα κάνει μόνος του ... καλή τύχη!
LogokrisiaGR Δημοσ. 5 Μαΐου 2014 Δημοσ. 5 Μαΐου 2014 Μετά από 10+ χρόνια επαγγελματικής εμπειρίας προφανώς και θα μπεις στον insomnia να ρωτήσεις τυχόν απορίες... stackoverflow και χαζομάρες... 1
παπι Δημοσ. 5 Μαΐου 2014 Δημοσ. 5 Μαΐου 2014 Μετά από 10+ χρόνια επαγγελματικής εμπειρίας προφανώς και θα μπεις στον insomnia να ρωτήσεις τυχόν απορίες... stackoverflow και χαζομάρες... Ναι αλλα εγω που ξερω τα παντα δεν ειμαι στο so. 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα