[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"doc-detail-148794-en":3,"doc-seo-148794-105":30,"detail-sidebar-cat-0-en-105":92},{"code":4,"msg":5,"data":6},0,"success",{"doc_id":7,"user_id":8,"nickname":9,"user_avatar":10,"doc_module":4,"category_id":11,"category_name":12,"doc_title":13,"doc_description":14,"doc_content":15,"file_id":16,"file_url":17,"file_type":18,"file_size":19,"view_count":20,"is_deleted":4,"is_public":20,"is_downloadable":20,"audit_status":20,"page_count":21,"language":22,"language_code":23,"site_id":24,"html_lang":23,"table_of_contents":25,"faqs":26,"seo_title":27,"seo_description":14,"update_tm":28,"read_time":29},148794,1099514067438,"River Wang","https://ap-avatar.wpscdn.com/avatar/100002539ee87300030?x-image-process=image/resize,m_fixed,w_180,h_180&k=1780474512215547542",6,"Technology","Solving Seismic Wave Equations with Astaroth library - Abstract and Technical Overview","Seismic modeling underpins exploration seismology, yet wave propagation simulations based on the wave equation impose heavy computational costs, especially when implemented with traditional CPU code. GPU acceleration can improve performance, but GPU programming is complex and slows development. The paper presents Astaroth, a framework that generates GPU-accelerated code for PDEs by producing optimized stencil kernels. A case study demonstrates rapid development of a seismic forward modeling application.","Submission code: 409JXNWAZ7  \nSee this and other abstracts on our website: [https://home.sbgf.org.br/Pages/resumos.php](https://home.sbgf.org.br/Pages/resumos.php)  \nSolving Seismic Wave Equations with Astaroth library  \nOscar Mojica (Supercomputing Center for Industrial Innovation; SENAI CIMATEC), Leonildes Soares de Melo Filho (Repsol Sinopec Brasil)  \nSolving Seismic Wave Equations with Astaroth library  \nCopyright 2025, SBGf-Sociedade Brasileira de Geofsica / Society of Exploration Geophysicist.  \nThis paper was prepared for presentation during the 19th International Congress of the Brazilian Geophysical Society held in Rio de Janeiro, Brazil, 18-20 November 2025. Contents of this paper were reviewed by the Technical Committee of the 19th International Congress of the Brazilian Geophysical Society and do not necessarily represent any position of the SBGf, its officers or members. Electronic reproduction or storage of any part of this paper for commercial purposes without the written consent of the Brazilian Geophysical Society is prohibited.  \nAbstract Summary  \nSeismic modeling is fundamental to exploration seismology, supporting essential tasks like data acquisition, processing, and reservoir characterization. However, simulating wave propagation by solving the wave equation is computationally demanding, often slowing research progress when relying on traditional CPU-based implementations. Although GPU implementations provide a pathway to faster computations, GPU programming remains inherently complex and time-consuming. In this work, we explore Astaroth, a framework that streamlines this process through GPU-accelerated code generation, facilitating the development of high-performance applications for solving partial differential equations (PDEs) with optimized stencil code on GPUs. Through a case study, we illustrate how Astaroth supports the rapid development of a seismic forward modeling application.  \nIntroduction  \nHigh-Performance Computing (HPC) plays a pivotal role in addressing the computational challenges of modern scientific simulations, particularly in exploration seismology, where accurate 3D wave modeling is essential for subsurface imaging and resource exploration. These simulations are computationally intensive, requiring significant processing power to model wave interactions over large domains and extended time periods. To meet these demands, writing high-performance GPU code is essential, yet it often increases development costs due to the complexity of GPU programming. One effective solution is automatic code generation, which allows geoscientists to focus on domainspecific problem descriptions while the underlying framework generates optimized low-level code. A leading example of such a framework is Devito (Louboutin et al. , 2017), a Python-based domainspecific language (DSL) for finite difference computations, offering symbolic PDEs definitions, automated code generation, and optimizations for CPU and GPU platforms.  \nBuilding on this approach, we explore Astaroth (Pekkil , 2019 ; Pekkil et al. , 2025), a library that uses the DSL paradigm to ease the efficient automated creation of high-performance GPU code. Astaroth offers an application programming interface (API) for accessing GPU resources, a DSL for creating stencil kernels, and a compiler that translates programs written in this DSL into highly optimized CUDA/HIP kernels. By automating the generation of efficient CUDA/HIP code, Astaroth simplifies GPU programming for geoscientists and provides stencil kernels that maximize GPU cache utilization. This makes it an attractive tool for geoscientists tackling large-scale 3D wave modeling, enabling them to achieve high performance without the burden of low-level optimization.  \nAstaroth’s DSL  \nAstaroth’s DSL simplifies writing efficient stencil operation kernels using a procedural style and adataflow model that aligns with graphics pipelines, leveraging GPU parallel processing. It focuses  \nSBGf ","cbCaiibGEuq5Xbvc","https://ap.wps.com/l/cbCaiibGEuq5Xbvc","pdf",6622989,1,5,"English","en",105,"# Abstract Summary\n# Introduction\n# Astaroth’s DSL\n# Experiments","[{\"question\":\"Why are seismic wave equation simulations computationally challenging?\",\"answer\":\"Simulating wave propagation requires solving the wave equation across large 3D domains and extended time periods, making it computationally intensive. Traditional CPU implementations often slow research progress.\"},{\"question\":\"What problem does Astaroth address for GPU-based PDE solving?\",\"answer\":\"Astaroth streamlines GPU programming by using DSL-driven automatic code generation. It compiles DSL programs into optimized CUDA/HIP kernels to reduce development effort and complexity.\"},{\"question\":\"How does Astaroth’s DSL help define stencil computations on GPUs?\",\"answer\":\"The DSL lets users explicitly define stencil operations using a C/C++-like syntax with new keywords. It restricts reads to predefined stencils and generates optimized kernels, storing fields in GPU-friendly buffers for performance.\"}]","Solving Seismic Wave Equations with Astaroth library - Abstract and Technical Overview | PDF",1787786189,13,{"code":4,"msg":31,"data":32},"ok",{"site_id":24,"language":23,"slug":33,"title":13,"keywords":34,"description":14,"schema_data":35,"social_meta":87,"head_meta":89,"extra_data":91,"updated_unix":28},"solving-seismic-wave-equations-with-astaroth-library-abstract-and-technical-overview","",{"@graph":36,"@context":86},[37,54,69],{"@type":38,"itemListElement":39},"BreadcrumbList",[40,44,48,51],{"item":41,"name":42,"@type":43,"position":20},"https://docshare.wps.com","Home","ListItem",{"item":45,"name":46,"@type":43,"position":47},"https://docshare.wps.com/document/","Document",2,{"item":49,"name":12,"@type":43,"position":50},"https://docshare.wps.com/document/technology/",3,{"item":52,"name":13,"@type":43,"position":53},"https://docshare.wps.com/document/solving-seismic-wave-equations-with-astaroth-library-abstract-and-technical-overview/148794/",4,{"url":52,"name":13,"@type":55,"author":56,"headline":13,"publisher":58,"fileFormat":61,"inLanguage":23,"description":14,"dateModified":62,"datePublished":63,"encodingFormat":61,"isAccessibleForFree":64,"interactionStatistic":65},"DigitalDocument",{"name":9,"@type":57},"Person",{"url":41,"name":59,"@type":60},"DocShare","Organization","application/pdf","2026-08-31","2026-08-26",true,{"@type":66,"interactionType":67,"userInteractionCount":20},"InteractionCounter",{"@type":68},"ViewAction",{"@type":70,"mainEntity":71},"FAQPage",[72,78,82],{"name":73,"@type":74,"acceptedAnswer":75},"Why are seismic wave equation simulations computationally challenging?","Question",{"text":76,"@type":77},"Simulating wave propagation requires solving the wave equation across large 3D domains and extended time periods, making it computationally intensive. Traditional CPU implementations often slow research progress.","Answer",{"name":79,"@type":74,"acceptedAnswer":80},"What problem does Astaroth address for GPU-based PDE solving?",{"text":81,"@type":77},"Astaroth streamlines GPU programming by using DSL-driven automatic code generation. It compiles DSL programs into optimized CUDA/HIP kernels to reduce development effort and complexity.",{"name":83,"@type":74,"acceptedAnswer":84},"How does Astaroth’s DSL help define stencil computations on GPUs?",{"text":85,"@type":77},"The DSL lets users explicitly define stencil operations using a C/C++-like syntax with new keywords. It restricts reads to predefined stencils and generates optimized kernels, storing fields in GPU-friendly buffers for performance.","https://schema.org",{"og:url":52,"og:type":88,"og:title":13,"og:site_name":59,"og:description":14},"article",{"robots":90,"canonical":52},"index,follow",{"doc_id":7,"site_id":24},{"code":4,"msg":5,"data":93},[94,98,102,106,110,113,118,123,128,131,135],{"id":20,"doc_module":4,"doc_module_name":46,"category_name":95,"show_sort_weight":96,"slug":97},"Story & Novel",90,"story-novel",{"id":47,"doc_module":4,"doc_module_name":46,"category_name":99,"show_sort_weight":100,"slug":101},"Literature",80,"literature",{"id":53,"doc_module":4,"doc_module_name":46,"category_name":103,"show_sort_weight":104,"slug":105},"Exam",70,"exam",{"id":21,"doc_module":4,"doc_module_name":46,"category_name":107,"show_sort_weight":108,"slug":109},"Comic",60,"comic",{"id":11,"doc_module":4,"doc_module_name":46,"category_name":12,"show_sort_weight":111,"slug":112},50,"technology",{"id":114,"doc_module":4,"doc_module_name":46,"category_name":115,"show_sort_weight":116,"slug":117},7,"Healthcare",40,"healthcare",{"id":119,"doc_module":4,"doc_module_name":46,"category_name":120,"show_sort_weight":121,"slug":122},8,"Research & Report",30,"research-report",{"id":124,"doc_module":4,"doc_module_name":46,"category_name":125,"show_sort_weight":126,"slug":127},9,"Religion & Spirituality",20,"religion-spirituality",{"id":126,"doc_module":4,"doc_module_name":46,"category_name":129,"show_sort_weight":126,"slug":130},"World Cup","world-cup",{"id":132,"doc_module":4,"doc_module_name":46,"category_name":133,"show_sort_weight":132,"slug":134},10,"Lifestyle","lifestyle",{"id":136,"doc_module":4,"doc_module_name":46,"category_name":137,"show_sort_weight":21,"slug":138},19,"General","general"]