{"id":969,"date":"2008-09-11T10:32:11","date_gmt":"2008-09-11T10:32:11","guid":{"rendered":"http:\/\/alienbabeltech.com\/?p=154"},"modified":"2009-04-09T13:42:32","modified_gmt":"2009-04-09T13:42:32","slug":"nvidia-8800-ultra-bottleneck-investigation","status":"publish","type":"post","link":"http:\/\/alienbabeltech.com\/main\/nvidia-8800-ultra-bottleneck-investigation\/","title":{"rendered":"nVidia 8800 Ultra Bottleneck Investigation"},"content":{"rendered":"<p><!--pagetitle:Introduction & Setup--><strong><span style=\"color: #99ccff;\"><span style=\"text-decoration: underline;\">Introduction <\/span> <\/span> <\/strong><\/p>\n<p>With so many new GPUs coming out from nVidia lately and benchmark figures flying around everywhere, I thought it would be interesting to examine where the performance differences might be coming from. The test is quite simple: since G80 (and newer) nVidia hardware have separate core, shader and memory clocks, I simply underclocked each individually the same percentage to see which has the biggest impact on performance.<\/p>\n<p>Note that the shader clock can be adjusted individually, but there\u2019s a limit how far it can go from the core. In the case of my 8800 Ultra, the most I could go down from 1512 MHz was 1224 MHz, or a <span style=\"color: #99ccff;\">19%<\/span> <strong><\/strong> drop.<\/p>\n<p>This <span style=\"color: #99ccff;\">19%<\/span> <strong><\/strong> figure will form the basis of all my underclocking; I\u2019ll run everything at stock and then underclock one component at a time to see which causes the biggest difference.<\/p>\n<p><strong><\/strong><\/p>\n<p><strong><span style=\"color: #99ccff;\"><span style=\"text-decoration: underline;\">Hardware<\/span> <\/span> <\/strong><\/p>\n<ul>\n<li>Intel Core 2 Duo E6850 (reference 3.0 GHz clock, 1333 MHz FSB).<\/li>\n<li>Gigabyte GA-G33M-DS2R motherboard (Intel G33 chipset, F6 BIOS).<\/li>\n<li>Single 8800 Ultra (768 MB, clocks as specified).<\/li>\n<li>4 GB DDR2-800 RAM (4 x 1 GB, dual-channel).<\/li>\n<li>X-Fi XtremeMusic.<\/li>\n<\/ul>\n<p><strong><\/strong><\/p>\n<p> <strong><span style=\"color: #99ccff;\"><span style=\"text-decoration: underline;\">Software<\/span> <\/span> <\/strong><\/p>\n<ul>\n<li>Forceware 169.21, high quality, optimizations off, LOD clamp, 16xAF and AA (as indicated) forced.<\/li>\n<li>Highest quality 2.1 sound.<\/li>\n<li>Windows XP Pro 32 bit (SP2, DirectX March 2008).<\/li>\n<\/ul>\n<p><!--nextpage--> <!--pagetitle:Methods--><strong><span style=\"color: #99ccff;\"><span style=\"text-decoration: underline;\">Methods<\/span> <\/span> <\/strong> <\/p>\n<p>I picked a selection of modern games and all tests were run at 1600\u00d71200, with two sets of tests per game.<\/p>\n<p>One set was run with AA and AF both disabled (the game\u2019s \u201craw\u201d state), while the other set was run with 16xAF, 4xAA and TrMS (usually but with some exceptions, like Crysis which doesn\u2019t support TrAA for example).<\/p>\n<p>The stock column displays the average framerate with the card being run at stock clocks (core 612, shader 1512, memory 1080) while the core, shader and mem columns show the framerate and % drop after a <span style=\"color: #99ccff;\">19% underclock<\/span> <strong><\/strong> is applied to <span style=\"color: #99ccff;\">that clock only<\/span>. When one is underclocked the rest are at stock speed.<\/p>\n<p>The underclock frequencies and colors are as follows: <span style=\"color: #ffff99;\">core 492<\/span>, <span style=\"color: #ffcc99;\">shader 1224<\/span>, <span style=\"color: #ccffcc;\">memory 872<\/span>, each a drop of <span style=\"color: #99ccff;\">19%<\/span> as noted above.<\/p>\n<p><!--nextpage--> <!--pagetitle:Results--><strong><span style=\"color: #99ccff;\"><span style=\"text-decoration: underline;\">Results<\/span> <\/span> <\/strong><\/p>\n<p style=\"TEXT-ALIGN: center\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-4098 aligncenter\" title=\"chart\" src=\"http:\/\/i2.wp.com\/alienbabeltech.com\/main\/wp-content\/uploads\/2008\/09\/chart.png?resize=548%2C407\" alt=\"chart\" title=\"chart\" srcset=\"http:\/\/i2.wp.com\/alienbabeltech.com\/main\/wp-content\/uploads\/2008\/09\/chart.png?resize=548%2C407 548w, http:\/\/alienbabeltech.com\/main\/wp-content\/uploads\/2008\/09\/chart-300x222.png 300w\" sizes=\"auto, (max-width: 548px) 100vw, 548px\" data-recalc-dims=\"1\" \/><\/p>\n<p style=\"TEXT-ALIGN: left\">Here is a graph showing the percentage performance drop for every tested scenario above:  <\/p>\n<p style=\"TEXT-ALIGN: center\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-4099 aligncenter\" title=\"graph\" src=\"http:\/\/i1.wp.com\/alienbabeltech.com\/main\/wp-content\/uploads\/2008\/09\/graph.png?resize=612%2C899\" alt=\"graph\" title=\"graph\" srcset=\"http:\/\/i1.wp.com\/alienbabeltech.com\/main\/wp-content\/uploads\/2008\/09\/graph.png?resize=612%2C899 612w, http:\/\/alienbabeltech.com\/main\/wp-content\/uploads\/2008\/09\/graph-204x300.png 204w\" sizes=\"auto, (max-width: 612px) 100vw, 612px\" data-recalc-dims=\"1\" \/><\/p>\n<p><!--nextpage--> <!--pagetitle:Conclusion--><span style=\"color: #99ccff;\"><span style=\"text-decoration: underline;\"><\/span> <\/span> <span style=\"color: #99ccff;\"><span style=\"text-decoration: underline;\">Conclusion <\/span> <\/span> <\/p>\n<p>The biggest performance difference clearly comes from the <span style=\"color: #99ccff;\">core<\/span> clock where some games are almost seeing a 1:1 performance delta with it. I expected it would be shader clock <strong><\/strong> making the biggest difference, but clearly that isn\u2019t the case with the 8800 Ultra.<\/p>\n<p>My theory is the Ultra\u2019s 128 SPs have plenty of shader power to burn as even a 1224 MHz shader clock is double the stock core clock (612 MHz). Ramping up the shader clock was a smart move on nVidia\u2019s part, especially since I doubt it affects yields too much.<\/p>\n<p>Enabling AF + AA moves the bottleneck away from the shaders and onto the memory and core. I expected this as said features hit the ROPs, TMUs and bandwidth harder. Note that even though TMUs are tied to SPs on the G80\/G92, they actually run at core clocks, not shader clocks.<\/p>\n<p>These figures may be different across generations of cards so results may vary, but it\u2019s clear if nVidia wanted to improve the performance of a 8800 Ultra without resorting to a GT200 core, the simplest way would be to ramp the core clock.<\/p>\n<p>Needless to say, if you\u2019re looking for extra performance from overclocking a 8800 Ultra, raise the core clock as high as possible.<\/p>\n","protected":false},"excerpt":{"rendered":"<p style=\"text-align: center;\"><a href=\"http:\/\/alienbabeltech.com\/main\/?p=969\"><img decoding=\"async\" class=\"size-medium wp-image-192 aligncenter\" title=\"Author: BFG10K\" src=\"http:\/\/alienbabeltech.com\/wordpress\/wp-content\/uploads\/2008\/09\/article-image1.jpg\" alt=\"\"><\/a><\/p>\n","protected":false},"author":5,"featured_media":4099,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7814,7],"tags":[298,239,293,521,292,460,291],"class_list":["post-969","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-articles","category-technology","tag-298","tag-239","tag-bottleneck","tag-investigation","tag-overclocking","tag-ultra","tag-underclocking"],"_links":{"self":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/posts\/969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/comments?post=969"}],"version-history":[{"count":0,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/posts\/969\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/media\/4099"}],"wp:attachment":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/media?parent=969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/categories?post=969"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/tags?post=969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}