Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Marina Kraeva is active.

Publication


Featured researches published by Marina Kraeva.


Concurrency and Computation: Practice and Experience | 2003

MPI-CHECK: a tool for checking Fortran 90 MPI programs

Glenn R. Luecke; Hua Chen; James Coyle; Jim Hoekstra; Marina Kraeva; Yan Zou

MPI is commonly used to write parallel programs for distributed memory parallel computers. MPI‐CHECK is a tool developed to aid in the debugging of MPI programs that are written in free or fixed format Fortran 90 and Fortran 77. MPI‐CHECK provides automatic compile‐time and run‐time checking of MPI programs. MPI‐CHECK automatically detects the following problems in the use of MPI routines: (i) mismatch in argument type, kind, rank or number; (ii) messages which exceed the bounds of the source/destination array; (iii) negative message lengths; (iv) illegal MPI calls before MPI_INIT or after MPI_FINALIZE; (v) inconsistencies between the declared type of a message and its associated DATATYPE argument; and (vi) actual arguments which violate the INTENT attribute. Copyright


Concurrency and Computation: Practice and Experience | 2002

Deadlock detection in MPI programs

Glenn R. Luecke; Yan Zou; James Coyle; Jim Hoekstra; Marina Kraeva

The Message‐Passing Interface (MPI) is commonly used to write parallel programs for distributed memory parallel computers. MPI‐CHECK is a tool developed to aid in the debugging of MPI programs that are written in free or fixed format Fortran 90 and Fortran 77. This paper presents the methods used in MPI‐CHECK 2.0 to detect many situations where actual and potential deadlocks occur when using blocking and non‐blocking point‐to‐point routines as well as when using collective routines. Copyright


Concurrency and Computation: Practice and Experience | 2004

The performance and scalability of SHMEM and MPI-2 one-sided routines on a SGI Origin 2000 and a Cray T3E-600

Glenn R. Luecke; Silvia Spanoyannis; Marina Kraeva

This paper compares the performance and scalability of SHMEM and MPI‐2 one‐sided routines on different communication patterns for a SGI Origin 2000 and a Cray T3E‐600. The communication tests were chosen to represent commonly used communication patterns with low contention (accessing distant messages, a circular right shift, a binary tree broadcast) to communication patterns with high contention (a ‘naive’ broadcast and an all‐to‐all). For all the tests and for small message sizes, the SHMEM implementation significantly outperformed the MPI‐2 implementation for both the SGI Origin 2000 and Cray T3E‐600. Copyright


Concurrency and Computation: Practice and Experience | 2006

A survey of systems for detecting serial run-time errors

Glenn R. Luecke; James Coyle; Jim Hoekstra; Marina Kraeva; Ying Li; Olga Taborskaia; Yanmei Wang

This paper evaluates the ability of a variety of commercial and non‐commercial software products to detect serial run‐time errors in C and C++ programs, to issue meaningful messages, and to give the line in the source code where the error occurred. The commercial products Insure++ and Purify performed the best of all the software products we evaluated. Error messages were usually better and clearer when using Insure++ than when using Purify. Our evaluation shows that the overall capability of detecting run‐time errors of non‐commercial products is significantly lower than the quality of both Purify and Insure++. Of all non‐commercial products evaluated, Mpatrol provided the best overall capability to detect run‐time errors in C and C++ programs. Copyright


Concurrency and Computation: Practice and Experience | 2004

Performance and Scalability of MPI on PC Clusters

Glenn R. Luecke; Marina Kraeva; Jing Yuan; Silvia Spanoyannis

The purpose of this paper is to compare the communication performance and scalability of MPI communication routines on a Windows Cluster, a Linux Cluster, a Cray T3E‐600, and an SGI Origin 2000. All tests in this paper were run using various numbers of processors and two message sizes. In spite of the fact that the Cray T3E‐600 is about 7 years old, it performed best of all machines for most of the tests. The Linux Cluster with the Myrinet interconnect and Myricoms MPI performed and scaled quite well and, in most cases, performed better than the Origin 2000, and in some cases better than the T3E. The Windows Cluster using the Giganet Full Interconnect and MPI/Pros MPI performed and scaled poorly for small messages compared with all of the other machines. Copyright


International Journal of High Performance Computing Applications | 2018

High-performance epistasis detection in quantitative trait GWAS

Nathan T. Weeks; Glenn R. Luecke; Brandon M. Groth; Marina Kraeva; Li Ma; Luke M Kramer; James E. Koltes; James M. Reecy

epiSNP is a program for identifying pairwise single nucleotide polymorphism (SNP) interactions (epistasis) in quantitative-trait genome-wide association studies (GWAS). A parallel MPI version (EPISNPmpi) was created in 2008 to address this computationally expensive analysis on large data sets with many quantitative traits and SNP markers. However, the falling cost of genotyping has led to an explosion of large-scale GWAS data sets that challenge EPISNPmpi’s ability to compute results in a reasonable amount of time. Therefore, we optimized epiSNP for modern multi-core and highly parallel many-core processors to efficiently handle these large data sets. This paper describes the serial optimizations, dynamic load balancing using MPI-3 RMA operations, and shared-memory parallelization with OpenMP to further enhance load balancing and allow execution on the Intel Xeon Phi coprocessor (MIC). For a large GWAS data set, our optimizations provided a 38.43× speedup over EPISNPmpi on 126 nodes using 2 MICs on TACC’s Stampede Supercomputer. We also describe a Coarray Fortran (CAF) version that demonstrates the suitability of PGAS languages for problems with this computational pattern. We show that the Coarray version performs competitively with the MPI version on the NERSC Edison Cray XC30 supercomputer. Finally, the performance benefits of hyper-threading for this application on Edison (average 1.35× speedup) are demonstrated.


Parallel Tools Workshop | 2010

The Importance of Run-Time Error Detection

Glenn R. Luecke; James Coyle; James Hoekstra; Marina Kraeva; Ying Xu; Mi-Young Park; Elizabeth Kleiman; Olga Weiss; Andre Wehe; Melissa Yahya

The ability of system software to detect and issue error messages that help programmers quickly fix serial and parallel run-time errors is an important productivity criterion for developing and maintaining application programs. Over ten thousand run-time error tests and a run-time error detection (RTED) evaluation tool has been developed for the automatic evaluation of run-time error detection capabilities for serial errors and for parallel errors in MPI, OpenMP and UPC programs. Evaluation results, tests and the RTED evaluation tool are freely available at http://rted.public.iastate.edu. Many compilers, tools and run-time systems scored poorly on these tests. The authors make recommendations for providing better RTED in the future.


trust, security and privacy in computing and communications | 2015

Fast Epistasis Detection in Large-Scale GWAS for Intel Xeon Phi Clusters

Glenn R. Luecke; Nathan T. Weeks; Brandon M. Groth; Marina Kraeva; L i Ma; Luke M. Kramer; James E. Koltes; James M. Reecy

epiSNP is a program for identifying pairwise single nucleotide polymorphism (SNP) interactions (epistasis) that affect quantitative traits in genome-wide association studies (GWAS). A parallel MPI version (EPISNPmpi) was created in 2008 to address this computationally-expensive analysis on data sets with many quantitative traits and markers. However, the explosion in genome sequencing will lead to the creation of large-scale data sets that will overwhelm EPISNPmpis ability to compute results in a reasonable amount of time. Thus, epiSNP was rewritten to efficiently handle these large data sets. This was accomplished by performing serial optimizations, improving MPI load balancing, and introducing parallel OpenMP directives to further enhance load balancing and allow execution on the Intel Xeon Phi coprocessor (MIC). These additions resulted in new scalable versions of epiSNP using MPI, MPI+OpenMP, and MPI+OpenMP with one or two MICs. For a large 774,660 SNP data set with 1,634 individuals, the runtime on 126 nodes of TACCs Stampede Supercomputer was 10.61 minutes without MICs, and 5.13 minutes with 2 MICs. This translated to speedups over EPISNPmpi of 17X without MICs, and 36X with 2 MICs.


Computer Science - Research and Development | 2013

UPC-CHECK: a scalable tool for detecting run-time errors in Unified Parallel C

James Coyle; Indranil Roy; Marina Kraeva; Glenn R. Luecke

Unified Parallel C (UPC) is a language used to write parallel programs for distributed memory parallel computers. UPC-CHECK (http://hpcgroup.public.iastate.edu/UPC-CHECK/) is a scalable tool developed to automatically detect argument errors in UPC functions and deadlocks in UPC programs at run-time and issue high quality error messages to help programmers quickly fix those errors. The run-time complexity of all detection techniques used are optimal, i.e. O(1) except for deadlocks involving locks where it is theoretically known to be linear in the number of threads. The tool is easy to use, and involves merely replacing the compiler command with upc-check. Error messages issued by UPC-CHECK were evaluated using the UPC RTED test suite for argument errors in UPC functions and deadlocks. Results of these tests show that the error messages issued by UPC-CHECK for these tests are excellent.


Proceedings of the Third Conference on Partitioned Global Address Space Programing Models | 2009

Evaluating error detection capabilities of UPC run-time systems

Glenn R. Luecke; James Coyle; James Hoekstra; Marina Kraeva; Ying Xu; Elizabeth Kleiman; Olga Weiss

The ability of system software to detect run-time errors and issue messages that help programmers quickly fix these errors is an important productivity criterion for developing and maintaining application programs. To evaluate this capability for Unified Parallel C (UPC), over two thousand run-time error tests and a run-time error detection (RTED) evaluation tool have been developed. For each error message issued, the RTED evaluation tool assigns a score from 0 to 5 based on the usefulness of the information in the message to help a programmer quickly fix the error. The RTED evaluation tool calculates averages over each error category and then prints the results. All tests and the RTED evaluation tool are freely available at the RTED web site http://rted.public.iastate.edu/UPC. The Cray, Berkeley, HP and GNU UPC compilers have been evaluated and results posted on this same web site.

Collaboration


Dive into the Marina Kraeva's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge