{"id":1387,"date":"2020-09-07T15:10:33","date_gmt":"2020-09-07T13:10:33","guid":{"rendered":"https:\/\/www.allpccloud.com\/?page_id=1387"},"modified":"2022-03-22T12:30:09","modified_gmt":"2022-03-22T11:30:09","slug":"gpu-software-development","status":"publish","type":"page","link":"https:\/\/www.allpccloud.com\/?page_id=1387","title":{"rendered":"GPU software development"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_row _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h1 style=\"text-align: justify;\">GPU software development<\/h1>\n<p style=\"text-align: justify;\">GPU acceleration provides new and innovative possibilities for computing intensive software. We use GPU acceleration in out <a href=\"https:\/\/www.allpccloud.com\/?page_id=1235\">rolling mill software<\/a> to make it fit for usage in process automations. We have developed a compact and powerful toolkit for GPU-based FEM and FVM applications which we also offer for client software projects.<\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_2,1_2&#8243; _builder_version=&#8221;4.15&#8243; custom_margin=&#8221;20px||||false|false&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h1 style=\"text-align: justify;\">GPU benchmark<\/h1>\n<p style=\"text-align: justify;\">As a relatively simple example of a finite-volume (FV-) computation we use a tube cooling simulation to highlight the possible gain of a GPU-accelerated approach. We compare the numerical solution of the transient thermal conduction equation with different methods, both on a CPU (AMD Ryzen 5 3600, single thread) and a GPU (Nvidia RTX 2080 Ti). You can switch through the images of the temperature distribution results in the gallery on the right, starting with 1200\u00b0C after 0 seconds, in steps of 10 seconds.<\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_gallery gallery_ids=&#8221;1390,1391,1392,1393&#8243; fullwidth=&#8221;on&#8221; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_gallery][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_2,1_2&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_gallery gallery_ids=&#8221;1394,1395&#8243; fullwidth=&#8221;on&#8221; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_gallery][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p style=\"text-align: justify;\">The problem is solved using explicit and implicit time stepping, the latter with direct or iterative system matrix inverting. The resolution and thus, the number of unknowns in the system is varied to study the impact of the problem size. For more than 200000 unknowns we see an acceleration factor as high as ~45 of the GPU being faster than the CPU. When the problem get smaller, the CPU Cache somewhat helps to close this gap.<\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_2,1_2&#8243; _builder_version=&#8221;4.15&#8243; custom_margin=&#8221;20px||||false|false&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.15.0&#8243; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<h1 style=\"text-align: justify;\">Use case<\/h1>\n<p style=\"text-align: justify;\">The heat treatment of plate stacks in a flat bed furnace has been simulated to optimize the process and the controlling automation. A highlight is the face-to-face contact algorithm which allows arbitrary positioning of plate stacks in the tub. The figure shows the temperature distribution at the end of the heating process.<\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.15&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_gallery gallery_ids=&#8221;1934&#8243; fullwidth=&#8221;on&#8221; _builder_version=&#8221;4.15.0&#8243; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;][\/et_pb_gallery][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GPU software development GPU acceleration provides new and innovative possibilities for computing intensive software. We use GPU acceleration in out rolling mill software to make it fit for usage in process automations. We have developed a compact and powerful toolkit for GPU-based FEM and FVM applications which we also offer for client software projects.GPU benchmark [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-1387","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=\/wp\/v2\/pages\/1387","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1387"}],"version-history":[{"count":4,"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=\/wp\/v2\/pages\/1387\/revisions"}],"predecessor-version":[{"id":1938,"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=\/wp\/v2\/pages\/1387\/revisions\/1938"}],"wp:attachment":[{"href":"https:\/\/www.allpccloud.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1387"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}