BlackMatter Δημοσ. 16 Φεβρουαρίου 2005 Share Δημοσ. 16 Φεβρουαρίου 2005 Καλά τα πήγες ως εδώ μέχρι του σημείου που άρχισες τους υπολογισμούς. Το ότι μόνος σου το ονομάζεις "effective" τα λέει όλα. Για πες πως είναι οι σωστοί υπολογισμοί και γιατί το Latency επηρεάζει περισσότερο τις DDR, και πως έπρεπε να το ονομάσω αν όχι effective..Και εγώ μπορώ να σε βγάλω λάθος με το έτσι θέλω και αξιωματικά, άνετα, χωρίς περαιτέρω εξηγήσεις. Δεν μίλησα για τριγραμμικό ανισοτροπικό, αλλά αφού είναι τόσο ιδεατή η διαχείρηση της μνήμης και κάτα επέκταση το εύρος αυτής, εξήγησέ μου γιατί οι σημερινές κάρτες καταλήγουν να κάνουν λιγότερο από την μισή δουλειά οn default. -50% από angle-dependancy: σε δύο γωνίες όταν ζητήσεις 16xAF θα λάβεις και τόσα δείγματα, στις δε υπόλοιπες δύο γωνίες ίσο (NVIDIA) ή ελαφρώς λιγότερο (ΑΤΙ) από 2xAF. Aφαίρεσε τώρα και τις άλλες βελτιστοποιήσεις και το υβρίδιο δι-/τριγραμμικό φιλτράρισμα και ο λογαριασμός μειώνεται περαιτέρω από το μισό. [/Quote] Είναι ιδεατή για τις συνηθισμένες περιπτώσεις, απο εκεί και πέρα ότι optimizations γίνονται βελτιώνουν περισσότερο τη ταχύτητα και γιατί να μη γίνουν αφού ο ανταγωνιστής θα τα κάνει και θα κερδίσει αγοραστικό κοινό. Φυσικά και εννοούσα κάτι άλλο, αλλά ούτε εδώ συμφωνώ. ΄Ολες οι σημερινές high end κάρτες μπορούν να φιλτράρουν μόνο σκέτο διγραμμικό χωρίς επιπτώσεις στις επιδόσεις, γιατί απλά έχουν bilinear TMUs και άρα για καθαρά τριγραμμικό χρειάζονται δύο κύκλοι. [/Quote] Kαι επειδή γίνεται σε δύο κύκλους? Με trilinear γίνεται interpolation ανάμεσα στα texels από δύο mipmaps οπότε χρειάζονται τουλάχιστον 32bit+32bit=64bit δεδομένων. Τα bilinear TMUs χρειάζονται 4Χ32bit σε κάθε κύκλο. Η οργάνωση μνήμης 4Χ64 φαίνεται ικανή να καλύψει αυτές τις απαιτήσεις. Το οξύμωρο σχήμα εδώ είναι ότι το ανισοτροπικό έχει μικρή σχέση με το εύρος μνήμης. Για άλλη μια φορά μίλησα για random texture access like with PS2.0 noise. Noise θα βρεις στο PS2.0 test (και μάλιστα αρκετό) του 3dmark03. To ότι οι PS διαχειρίζονται και υφές από την εμφάνισή τους θα σου λέει κάτι ασφαλώς. Οι VS διαχειρίζονται υφές μόνο στο VS3.0.[/Quote]Έχει μικρή σχέση με το εύρος μνήμης το ανισοτροπικό..Όπως πάντα εσύ θες κάτι που να τσακίζει το εύρος μνήμης. To βρήκες με το random texture access. Mα δεν σου λέω τι να αγοράσεις και τι όχι, απλά η "ιδέα" σου υστερεί πρακτικότητας. Το δοκίμασα, δεν μου πήρε δα και πολύ χρόνο.[/Quote]Ας στερείται πρακτικότητας, έχει οικονομικές απολαβές όμως. Ερώτηση: μεταφέρονται ΜΟΝΟ δεδομένα υφών μέσω του διαύλου; Η απάντηση σαφώς και είναι αρνητική και για αυτό ο υπολογισμός μου δεν είναι λάθος.[/Quote]Όχι μεταφέρονται και vertex data, καθώς και κάποια άλλα δεδομένα μητρών μετασχηματισμού, που προκύπτουν απο AI και physics engine. Αυτά τα τελευταία είναι που δε γίνονται μακροπρόθεσμα cache στη μνήμη γιατί αλλάζουν απο Frame σε Frame και ανάλογα με το user input , και κάνουν την όποια διαφορά απο AGP4X σε AGP8X. O υπολογισμός λέει ποιο είναι το bandwidth που απομένει για AGP, δε λέει πως θα χρησιμοποιηθεί. Ποιό level σε ποιό παιχνίδι ακριβώς χρησιμοποιεί 128ΜΒ μνήμης και μου έχει διαφύγει; Μη μου πεις ότι αναφέρεσαι στο ΗL2 γιατί θα αυτοκτονήσω Τα Fifa2005,NBA2005 σαφώς μικρότερα απο 128MB. Need For Speed Underground 2 πρέπει να είναι σε αυτά τα επίπεδα. To Doom3 και HL2 πρέπει να είναι περί τα 256MB ανα Level, αλλά και πάλι η διαφορά δεν είναι τόσο μεγάλη που να καταφεύγουν σε υπερβολική χρήση του AGP. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Ailuros Δημοσ. 16 Φεβρουαρίου 2005 Share Δημοσ. 16 Φεβρουαρίου 2005 Για πες πως είναι οι σωστοί υπολογισμοί και γιατί το Latency επηρεάζει περισσότερο τις DDR, και πως έπρεπε να το ονομάσω αν όχι effective..Και εγώ μπορώ να σε βγάλω λάθος με το έτσι θέλω και αξιωματικά, άνετα, χωρίς περαιτέρω εξηγήσεις. http://v3.espacenet.com/textdes?DB=EPODOC&IDX=US2005024378&F=0&QPN=US2005024378 Αν χρειάζεσαι περαιτέρω εξηγήσεις αφού διαβάσεις την εν λόγω πατέντα το συζητάμε. Τι έχεις την εντύπωση ότι όλα τα φαντάστηκα απλά; Είναι ιδεατή για τις συνηθισμένες περιπτώσεις, απο εκεί και πέρα ότι optimizations γίνονται βελτιώνουν περισσότερο τη ταχύτητα και γιατί να μη γίνουν αφού ο ανταγωνιστής θα τα κάνει και θα κερδίσει αγοραστικό κοινό. Kαι επειδή γίνεται σε δύο κύκλους? Με trilinear γίνεται interpolation ανάμεσα στα texels από δύο mipmaps οπότε χρειάζονται τουλάχιστον 32bit+32bit=64bit δεδομένων. Τα bilinear TMUs χρειάζονται 4Χ32bit σε κάθε κύκλο. Η οργάνωση μνήμης 4Χ64 φαίνεται ικανή να καλύψει αυτές τις απαιτήσεις. Διάβασε το ως άνω link. Έχει μικρή σχέση με το εύρος μνήμης το ανισοτροπικό..Όπως πάντα εσύ θες κάτι που να τσακίζει το εύρος μνήμης. To βρήκες με το random texture access. Δεν "βρήκα" τίποτε εγώ. Research from various DevRel departments from different IHVs do. Υπάρχει ή δεν υπάρχει noise στο PS2.0 test/3dmark03'. Εντελώς συμπτωματικά δεν εμφανίστηκε σε αυτή την συνθετική εφαρμογή στο να μετρήσει επιδόσεις με PS2.0. Όχι μεταφέρονται και vertex data, καθώς και κάποια άλλα δεδομένα μητρών μετασχηματισμού, που προκύπτουν απο AI και physics engine. Αυτά τα τελευταία είναι που δε γίνονται μακροπρόθεσμα cache στη μνήμη γιατί αλλάζουν απο Frame σε Frame και ανάλογα με το user input , και κάνουν την όποια διαφορά απο AGP4X σε AGP8X. O υπολογισμός λέει ποιο είναι το bandwidth που απομένει για AGP, δε λέει πως θα χρησιμοποιηθεί. α. Για να είναι η διαφορά μεταξύ ΑGPx4 & AGPx8 από μηδαμινή εώς ανύπαρκτη, το διαθέσιμο agp bandwidth σπάνια θα πρέπει να ξεπερνάει το εύρος του ΑGPx4 και αυτό στην ιδανικότερη περίπτωση. β. Πολύ σωστά για τα επιπλέον δεδομένα. Υπάρχει λόγος άλλωστε που το Doom3 για παράδειγμα είναι και αυτό τόσο CPU bound (see dynamic shadows position calculations). γ. Αντί να φτάνουμε σε αέναη τριχοτόμιση, θα περίμενα μια θετική αντιπροσφορά με μιας εξίσωση που θα είχε περισσότερο νόημα από αυτό που πρότεινα εγώ. Τα Fifa2005,NBA2005 σαφώς μικρότερα απο 128MB. Need For Speed Underground 2 πρέπει να είναι σε αυτά τα επίπεδα. To Doom3 και HL2 πρέπει να είναι περί τα 256MB ανα Level, αλλά και πάλι η διαφορά δεν είναι τόσο μεγάλη που να καταφεύγουν σε υπερβολική χρήση του AGP. Μισό. Εννοείς το συνολικό level φαντάζομαι και όχι πόση μνήμη καταναλώνει μια κάρτα γραφικών την ώρα της επεξεργασίας αυτού. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
BlackMatter Δημοσ. 16 Φεβρουαρίου 2005 Share Δημοσ. 16 Φεβρουαρίου 2005 Καλά γιατί να διαβάσω πατέντα για 3d γραφικά όταν το θέμα είναι το DDR Latency Vs SDRAM Latency? ΑΝ τώρα δεχτούμε ότι trilinear anisotropic μικρή σχέση έχει με εύρος μνήμης τόσο το καλύτερο, αυτό σημαίνει ότι η παρούσα αρχιτεκτονική και ταχύτητα της μνήμης υπερκαλύπτει τη συνηθισμένη περίπτωση του trilinear anisotropic. Εκτός αν εσύ θεωρείς συνηθισμένη περίπτωση το PS2.0+ με περίπλοκα εφφέ. Πόσο ποσοστό % από τα pixels της οθόνης σε ένα τυχαίο frame πιστεύεις ότι προέρχονται από PS2.0+ και πόσα από trilinear anisotropic η πιο κάτω. 20%- 80% και πολύ βάζω για PS2.0+. AGP bandwidth=MainMemoryBandwidth-0.5*CPUbandwidth. Ο συντελεστής 0.5 δικαιολογείται από το ότι βάζω 25% του CPU time σε εσωτερικές εντολές(πράξεις μεταξύ καταχωρητών) και άλλο 25% σε προσπελάσεις στη cache. Και μια συνηθισμένη περίπτωση γι αυτή την εξίσωση είναι AGP bandwidth=6.4GB/s-0.5*6.4GB/s=3.2Gb/s υπεραρκετό για AGP 8X(για επεξεργαστές Pentium4 με FSB800 και μνήμες DualDDR400). Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Ailuros Δημοσ. 17 Φεβρουαρίου 2005 Share Δημοσ. 17 Φεβρουαρίου 2005 Καλά γιατί να διαβάσω πατέντα για 3d γραφικά όταν το θέμα είναι το DDR Latency Vs SDRAM Latency? Για να γλυτώσουμε αμφότεροι χρόνο ίσως; Aλλά ας είναι λοιπόν: Trilinear (three-axis) filtering is the same process over the four closest pixels on two different mip-map levels [ref. 4]. This is illustrated in FIG. 2 of the present application. Mip-maps are copies of the original texture map which have been pre-processed by being filtered so as to be successively reduced to half the resolution. MIP here stands for MULTUM IN PARVO (much in a small place). This is repeated until the resulting image is 1 pixel in size (this assumes that the texture is square and of a size which is a power of 2), so that there are a hierarchical series of the mip-maps. FIG. 3 shows an example of a brick texture at 128*128 resolution with the associated lower mip-map levels. A mip-map can be thought of as a pyramid. Three-dimensional image generation is computationally intensive. Animated 3D images for games and Computer Aided Design (CAD) applications are becoming increasingly expensive in terms of processing power, as scenes become more photo-real and images are required to respond in real-time. A large number of floating point calculations are required to determine the geometry of the polygon structure in the scene and a large number of arithmetic operations are required to fill and shade the polygons. Dedicated hardware is available [ref. 5] that can perform these operations many times more efficiently than software. Accesses to stored databases are also a limiting factor to performance. Local memory in dedicated hardware can reduce the effect of any memory access bottlenecks. Texture mapping is particularly memory intensive especially when performing a filtering (that is, interpolation) operation where many texture pixels are read for every pixel that is mapped onto the display. It is convenient at this point to consider, and define, the various types of memory that are available to the system designer. The term "local memory" refers to solid state semiconductor memory located close to the memory control semiconductor device or circuit. The term "internal memory" refers to memory located within the particular semiconductor device being referred to. "External memory" is any memory outside the semiconductor device. Local memory can be DRAM based. DRAM is an acronym for Dynamic Random Access Memory, which is a solid-state semiconductor. Synchronous DRAM (SDRAM) enables data accesses to be co-ordinated by a clock signal. SDRAM has a higher access bandwidth capability than DRAM due to its pipelined architecture but is more expensive. Local memory and internal memory can be DRAM or SDRAM based. External memory can be sold-state or a mass storage array such as a hard disk. Semiconductor memory is very expensive and makes up a large percentage of the overall cost of a computer system. DRAM is addressed over a multiplexed address bus, that is, the address needed to access an individual data item is transmitted to the memory device in two parts. The core memory array in the DRAM device is a rectangular matrix where a single data item is addressed when a row control line and a column control line are activated at the same time. This requires a separate row and column address. If the row address does not change between sequential accesses, then only the column address needs to be transmitted. A row of data in the DRAM array is known as a page. When the row address remains unchanged between accesses, the accesses are said to be "in page". "In page" accesses are much quicker than those that span two or more pages, and memory system designers endeavour to keep bursts of accesses in page. Some memory devices, such as SDRAM, make use of multiple memory banks to improve performance. Each memory bank can have its own page open, permitting data accesses to separate areas of memory without breaking page. Texturing is the most performance-intensive process of 3D imaging as it requires all textures to be retrieved from memory. Techniques such as trilinear and bilinear filtering (interpolation) require up to eight texture pixels or texels to be retrieved from memory for every pixel projected onto the display, as described above and illustrated in FIGS. 1 and 2. Texturing therefore requires a very high bandwidth path into memory. Texture caching can be employed to reduce the texturing bandwidth requirement and increase system performance. The optimum performance objective is to be able to read all necessary texels in one processing pipeline clock cycle. ........to be continued.... Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Ailuros Δημοσ. 17 Φεβρουαρίου 2005 Share Δημοσ. 17 Φεβρουαρίου 2005 The best form of trilinear filtering is that which is performed on a per-pixel basis. This requires eight texture pixels (texels) to produce the final on-screen pixel. As these texels can be located anywhere in memory, eight separate memory reads are often required. Trilinear filtering is performed between two mip-levels, and so four memory reads occur from one mip-map location and four from another. Textures are usually stored in local memory, although system memory texturing is becoming more popular. These memories have a finite bandwidth and are very often required to serve as a resource to memory for many different applications. Set-up parameters, depth information, and display information are usually stored in local memory, and system applications are usually run from system memory. Eight individual memory reads per pixel is usually beyond the capabilities of many memory systems. Added to page change between mip-maps, this often achieves less than adequate 3D performance. The memory bandwidths required for a trilinear texture access system is dependent on the number of memory accesses needed for each texture filtering operation and the pixel throughput performance demanded by the application. Equation 1 shows how the texture bandwidth can be determined. The equation also shows how the bandwidth of page breaks must also be taken into account. Bandwidthtexture=((Accessespixel*Widthmemory)+(Accessespage-break*Widthmemory)*Throughputpixel Equation (1) Where: Bandwidthtexture is the texture bandwidth demanded from the memory measured in bytes/s. This is not the memory bandwidth that can be supplied by the memory. Accessespixel is the average number of memory accesses per pixel. Not all the required texels can be read in one access, even with the right data width. Accessespage-break is the average number of memory access slots lost to page breaks per pixel. A single page break using SDRAM requires at least 8 accesses slots. Widthmemory is the width of the memory data bus, measured in bytes. This has to be at least 8 bytes (64 bits) to ensure that four texels can be read in one clock cycle. Throughputpixel is the pixel throughput demanded by the application, measured in pixels/s. For most modern applications this is around 100 Mpixels/s. The average number of accesses is calculated by taking into account the likelihood that all data will be retrieved in single, double or quadruple accesses. The equation also takes account of the number of mip-maps required in the filtering operation, trilinear filtering uses two but bilinear requires only one. The equation also shows how the average number of accesses is reduced linearly with compression. Obviously the less data there is to fetch the less memory accesses that are required and the more likely all the data will reside in the same data word. Memory access streams that continuously swap between different memory banks can have a large effect on performance. Equation 1 shows how dominant page breaks are to the performance of texture filtering as a whole. For trilinear filtering, page breaks can be particularly problematic, where a number of mip-maps can often span more than one memory page. 3D imaging techniques often demand such a high level of performance that only dedicated hardware solutions can be used. This often requires the development of a special silicon chip. As well as performing texture mapping, the chip will often be called upon to perform all the geometry processing, polygon set up, image projection, illumination calculations, fogging calculations, hidden surface removal, and display control. Therefore it is critical that each stage in the generation of a 3D image is made as small as possible to enable all processes to fit on the same silicon die. As well as requiring a large memory bandwidth, a trilinear filtering operation can only be implemented in a large amount of logic and therefore silicon area. It is important that an optimum solution be found that limits the required logic, and therefore cost, to a minimum. Όλα από την εν λόγω πατέντα. Αν ήταν άσχετη δεν θα συνιστούσα να την διαβάσεις. Μιλάμε για πατέντα που αφορά =/>WGF2.0 παρεπιπτόντως και μια και επιλεκτικά μόνο έβγαλα κομμάτια, αξίζει την ανάγνωση αν σε ενδιαφέρει. Εκτός αν εσύ θεωρείς συνηθισμένη περίπτωση το PS2.0+ με περίπλοκα εφφέ. PS2.0 σκέτο είναι. Το 3dmark2003 πότε ακριβώς δημοσιεύτηκε; Είναι τόσο πολύπλοκο που μια απλή 9700PRO λίγο μετά την παρουσίασή της έβγαζε ένα αρκετά καλό score. Πόσο ποσοστό % από τα pixels της οθόνης σε ένα τυχαίο frame πιστεύεις ότι προέρχονται από PS2.0+ και πόσα από trilinear anisotropic η πιο κάτω. 20%- 80% και πολύ βάζω για PS2.0+. Δεδομένου ότι το μήτε το FarCry μήτε το ΗL2 χρησιμοποιούν φωτοσκιάσεις πέραν των 50 εντολών, απορώ που βλέπεις το PS2.0+ (or extended). Αν μιλάγαμε για την UE3 με ως και 200 εντολές ανά φωτοσκίαση το πράγμα θα άλλαζε. Εδώ συνθετικά μετροπρογράμματα όπως το 3dmark προσπαθούν να κάνουν προβλέψεις μάλλον στην έκδοση 2005 και όχι 2003. AGP bandwidth=MainMemoryBandwidth-0.5*CPUbandwidth. Ο συντελεστής 0.5 δικαιολογείται από το ότι βάζω 25% του CPU time σε εσωτερικές εντολές(πράξεις μεταξύ καταχωρητών) και άλλο 25% σε προσπελάσεις στη cache. Και μια συνηθισμένη περίπτωση γι αυτή την εξίσωση είναι AGP bandwidth=6.4GB/s-0.5*6.4GB/s=3.2Gb/s υπεραρκετό για AGP 8X(για επεξεργαστές Pentium4 με FSB800 και μνήμες DualDDR400). Λαμπρά και σε ευχαριστώ. Τώρα δείξε μου και μια περίπτωση σε πραγματικό χρόνο όπου μεταξύ AGPx8 & AGPx4 θα δω αντάξια διαφορά των 3.2GB/sec. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Ailuros Δημοσ. 17 Φεβρουαρίου 2005 Share Δημοσ. 17 Φεβρουαρίου 2005 ΑΝ τώρα δεχτούμε ότι trilinear anisotropic μικρή σχέση έχει με εύρος μνήμης τόσο το καλύτερο, αυτό σημαίνει ότι η παρούσα αρχιτεκτονική και ταχύτητα της μνήμης υπερκαλύπτει τη συνηθισμένη περίπτωση του trilinear anisotropic. Όχι. Στις τωρινές κάρτες υπάρχουν οι εξής βελτιστοποιήσεις: 1. Adaptivity= advanced core logic defines the "steepness" of textures and applies the according numbers of samples between 1x (no-AF) and 16x. Current applications peak normally at 6xAF samples. 2. Angle-dependancy= two of the four angles receive up to 2x samples, the remaining two angles the maximum amount of samples requested (2x up to 16x). 3. Texturing stage optimisation= Texturing stage "0" receives "full" (*) trilinear filtering, while the remaining from "1-7" receive only plain bilinear. 4. Trilinear filtering optimisation= a mixture between bi- and trilinear filtering, also often referred to as "brilinear" or "trylinear". (*) When the texturing stage optimisation is enabled, texturing stage "0" receives "brilinear" instead of real full trilinear. 5. Anisotropic MIP filter optimisation= also referred to as a "LOD hack". Exchanging AF-samples with more aggressive negative LOD values, which can result to side-effects like texture/MIPmap aliasing and/or moire patterns amongst others. 1-4 are enabled on default on current GeForces ("Quality" AF), 1-5 on R4xx class accelerators. For both family of cards, all prementioned optimisations can be disabled via the driver control panel. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
BlackMatter Δημοσ. 17 Φεβρουαρίου 2005 Share Δημοσ. 17 Φεβρουαρίου 2005 Οk υποχωρώ και νίκησες. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Ailuros Δημοσ. 17 Φεβρουαρίου 2005 Share Δημοσ. 17 Φεβρουαρίου 2005 Οk υποχωρώ και νίκησες. Συζήτηση κάναμε. Δεν νομίζω να νοιάζεται κανείς από τους δυό μας για το ποιός "νίκησε" εν τέλη. Είναι σπάνιο να εμφανίζονται τόσο ενδιαφέρουσες συζητήσεις και μακάρι να είχαμε την πολυτέλεια να είχαμε και έναν πραγματικό επαγγελματία στην συζήτηση για να μας διορθώσει αμφότερους. Σχηματίζω γνώμη βάση αυτών που διαβάζω και αυτών που είμαι σε θέση να καταλάβω, άρα ελλείψεις και λάθη θα πρέπει να είναι αναμενόμενα. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
BlackMatter Δημοσ. 17 Φεβρουαρίου 2005 Share Δημοσ. 17 Φεβρουαρίου 2005 Συζήτηση κάναμε. Δεν νομίζω να νοιάζεται κανείς από τους δυό μας για το ποιός "νίκησε" εν τέλη. Ούτε λιγάκι? Καθόλου δηλαδή? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Ailuros Δημοσ. 18 Φεβρουαρίου 2005 Share Δημοσ. 18 Φεβρουαρίου 2005 ΄Εχουμε να κερδίσουμε ή να χάσουμε τίποτα; Μεγάλα παιδιά είμαστε. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.