{"id":4767,"date":"2019-03-19T13:26:20","date_gmt":"2019-03-19T18:26:20","guid":{"rendered":"http:\/\/computing.fnal.gov\/hep-on-hpc\/?page_id=4767"},"modified":"2019-03-19T13:26:20","modified_gmt":"2019-03-19T18:26:20","slug":"parallel-monte-carlo-event-generation-for-hpc","status":"publish","type":"page","link":"https:\/\/computing.fnal.gov\/hep-on-hpc\/parallel-monte-carlo-event-generation-for-hpc\/","title":{"rendered":"Parallel Monte-Carlo event generation for HPC"},"content":{"rendered":"<p>We develop programs that allow for a convenient use of HPC resources for the task of Monte-Carlo event-generation. Data parallelism is based on HDF5 while computational parallelism is using ASCR&#8217;s DIY.<br \/>\nFor the time being we have two prototypes that can be used in physics applications that require significant CPU resources.<\/p>\n<p>One of them uses Pythia8 for all simulation purposes while the other has an additional step, namely reading in matrix-level events in the common &#8220;Les Houches Event&#8221; (LHE) format &#8212; albeit converted for scalability to HDF5. In the latter application, Pythia8 is then used for the particle level event simulation step as well as multijet-merging.<\/p>\n<p>Both applications are hooked up with Rivet in order to analyse the simulated collision events and write out histograms suitable for immediate comparison with the experimentally measured counterparts.<\/p>\n<p>A pictorial representation of the program flow can be found below.<\/p>\n<p>&nbsp;<\/p>\n<div class=\"row\">\n<div class=\"col-sm-4\">\n<div id=\"attachment_4773\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/hfdiy.png-000001.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-4773\" class=\"wp-image-4773 size-medium\" src=\"http:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/hfdiy.png-000001-300x229.png\" alt=\"\" width=\"300\" height=\"229\" srcset=\"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/hfdiy.png-000001-300x229.png 300w, https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/hfdiy.png-000001-768x586.png 768w, https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/hfdiy.png-000001-1024x781.png 1024w, https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/hfdiy.png-000001.png 1069w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-4773\" class=\"wp-caption-text\">Schematic program flow of our parallel event generation program.<\/p><\/div>\n<\/div>\n<div class=\"col-sm-4\">\n<div id=\"attachment_4776\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/timingwoof.png-000001.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-4776\" class=\"size-medium wp-image-4776\" src=\"http:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/timingwoof.png-000001-300x225.png\" alt=\"\" width=\"300\" height=\"225\" srcset=\"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/timingwoof.png-000001-300x225.png 300w, https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/timingwoof.png-000001-768x576.png 768w, https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/timingwoof.png-000001-1024x768.png 1024w, https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-content\/uploads\/2019\/03\/timingwoof.png-000001.png 1800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-4776\" class=\"wp-caption-text\">CPU-cost analysis of event-generation for matrix element (ME) and particle level simulation. This example is a simulation of W+ up to 8 jets.<\/p><\/div>\n<\/div>\n<\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We develop programs that allow for a convenient use of HPC resources for the task of Monte-Carlo event-generation. Data parallelism is based on HDF5 while computational parallelism is using ASCR&#8217;s DIY. For the time being we have two prototypes that can be used in physics applications that require significant CPU resources. One of them uses&#8230; <a class=\"more-link\" href=\"https:\/\/computing.fnal.gov\/hep-on-hpc\/parallel-monte-carlo-event-generation-for-hpc\/\"> More &#187;<\/a><\/p>\n","protected":false},"author":42,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-4767","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/pages\/4767","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/users\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/comments?post=4767"}],"version-history":[{"count":1,"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/pages\/4767\/revisions"}],"predecessor-version":[{"id":4779,"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/pages\/4767\/revisions\/4779"}],"wp:attachment":[{"href":"https:\/\/computing.fnal.gov\/hep-on-hpc\/wp-json\/wp\/v2\/media?parent=4767"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}