GET /api/v2/video/382
HTTP 200 OK Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, PUT, PATCH, HEAD, OPTIONS
{ "category": "PyCon US 2011", "language": "English", "slug": "pycon-2011--solvcon--a-new-python-based-software-", "speakers": [ "Yung-Yu Chen" ], "tags": [ "gpgpu", "numericalsimulations", "parallelcomputing", "pycon", "pycon2011", "simulations", "solvcon" ], "id": 382, "state": 1, "title": "SOLVCON: A New Python-Based Software Framework for Massively Parallelized Numerical Simulations", "summary": "", "description": "SOLVCON: A New Python-Based Software Framework for Massively Parallelized\nNumerical Simulations\n\nPresented by Yung-Yu Chen\n\nSOLVCON is the first Python-based software framework for high-resolution\nsimulations of multi-physics conservation laws. More than ninety percents of\nthe codes are done in Python. Performance hot-spots are optimized by C and\nglued by ctypes library. SOLVCON is high-performance in nature and has been\nable to utilize 512 4-core nodes at Ohio Supercomputer Center.\n\nAbstract\n\nIn this decade, performance improvements of scientific computing will mainly\ncome from major changes in the computing hardware. A well-organized software\nstructure is imperative to accommodate such changes. Based on Python, SOLVCON\n([]( is designed as a software\nframework to develop conservation-law solvers by segregating solving kernels\nfrom various supportive functionalities. Being the governing equations for the\nphysical world, conservation laws are applied everywhere in science and\nengineering. Although it is well known that the numerical algorithms and\nphysical models form the kernel of any conservation-law solver, few if not\nnone code can cleanly separate those core components from supportive\nfunctionalities. The lack of organization has hindered the development of\nlegacy codes. To address the issues, the supportive functionalities are\ninternalized in the framework of SOLVCON. Aided by the framework, both multi-\nphysics and hybrid parallelism can be implemented in an organized way. To\ndate, SOLVCON has utilized up to 512 4-core nodes at Ohio Supercomputer Center\nfor high-resolution simulations of computational fluid dynamics (CFD). SOLVCON\ntargets to concurrently utilize thousands of computer nodes for high-\nresolution simulations using over one billion mesh points.\n\nOne of the major purposes of SOLVCON is to resolve the complicated programming\nefforts for GPU clusters. Supercomputing is undergoing the third revolution by\nthe emerging GPU computing. To date, the fastest supercomputer in the Top 500\nlist, Tianhe-1A, is a GPU cluster. GPU computing promises numerical analysts\nto reduce the time for the high-resolution simulations from months to days. In\norder to use GPU computing to accelerate such large-scale problems, GPU nodes\nmust be networked together to form a GPU cluster. As such, shared-memory and\ndistributed-memory parallelization must be simultaneously utilized to achieve\nthe so-called hybrid parallelism. Parallel computing is difficult, and hybrid\nparallel computing is more difficult. By using Python to develop the\nfundamental software structure, GPU or multi-threaded programming for shared-\nmemory parallelization are locked in solving kernels. Complex message-passing\nis implemented in SOLVCON and isolated from solving-kernel developers. Highly\noptimized C and GPU codes are glued into SOLVCON without loss of performance\nby using the ctypes package. Othere important features of SOLVCON include:\n\n * Pluggable multi-physics.\n * Built-in [CESE]( solvers.\n * Unstructured mesh consisting of mixed elements.\n * Interface to Message-Passing Interface (MPI) libraries.\n * Socket communication layer: working without MPI installed.\n * Automatic distributed-memory parallelization by domain decomposition.\n * Parallel I/O.\n * In situ visualization by [VTK]( library.\n * Standalone writers to VTK legacy and XML file formats.\n * Integration to supercomputer (cluster) batch systems.\n\nSOLVCON has been applied to computation fluid dynamics and computational\nmechanics. More physical solvers are being developed for various propagating\nwave problems, e.g., electromagnetic waves. By using Python as the foundation\nin SOLVCON, performance and extensibility are well balanced, and computational\nresearch is being done in the most productive way. In this talk, the author of\nSOLVCON will make an introduction to the software framework by including the\nfollowing topics:\n\n 1. Simulations of conservation laws and hybrid parallelism for supercomputing.\n 2. Issues in legacy codes and challenges to code for emerging supercomputer hardware.\n 3. Using SOLVCON in the simple way by pre-defined modules.\n 4. Fixed parts in SOLVCON. \n 1. Distributed computing.\n 2. Multi-thread utilities.\n 5. Customizable parts in SOLVCON. \n 1. Pluggable multi-physics and GPGPU computing.\n 2. Supercomputer batch system and bootstrapping.\n 3. In situ visualization.\n 6. Conclusion.\n\nThe talk will take 30 minutes.\n\n", "quality_notes": "", "copyright_text": "Creative Commons Attribution-NonCommercial-ShareAlike 3.0", "embed": "", "thumbnail_url": "", "duration": null, "video_ogv_length": 147326868, "video_ogv_url": null, "video_ogv_download_only": false, "video_mp4_length": null, "video_mp4_url": "", "video_mp4_download_only": false, "video_webm_length": null, "video_webm_url": null, "video_webm_download_only": false, "video_flv_length": null, "video_flv_url": null, "video_flv_download_only": false, "source_url": "", "whiteboard": "", "recorded": "2011-03-11", "added": "2012-02-23T04:20:00", "updated": "2014-04-08T20:28:28.032" }