Kostadin Damevski - Academia.edu (original) (raw)
Uploads
Papers by Kostadin Damevski
ABSTRACT A resounding success of the Scientific Discovery through Advanced Computing (SciDAC) pro... more ABSTRACT A resounding success of the Scientific Discovery through Advanced Computing (SciDAC) program is that high-performance computational science is now universally recognized as a critical aspect of scientific discovery [71], complementing both theoretical and experimental research. As scientific communities prepare to exploit unprecedented computing capabilities of emerging leadership-class machines for multi-model simulations at the extreme scale [72], it is more important than ever to address the technical and social challenges of geographically distributed teams that combine expertise in domain science, applied mathematics, and computer science to build robust and flexible codes that can incorporate changes over time. The Center for Technology for Advanced Scientific Component Software (TASCS) tackles these issues by exploiting component-based software development to facilitate collaborative high-performance scientific computing.
As scientific computing experiences continuous growth of the size of simulations, component frame... more As scientific computing experiences continuous growth of the size of simulations, component frameworks intended for scientific computing need to handle more components and execute on numerous hardware resources simultaneously. Our distributed component framework CCALoop presents a novel design that supports scalability in both number of components in the system and distributed computing resources. CCALoop also presents several other beneficial design principles for distributed component frameworks such as fault-tolerance, parallel components, and support for multiple users. To provide scalability it distributes the responsibility for data queries and updates equally to all nodes in the system through a distributed hash table mechanism, while providing low latency in these operation through a method that guarantees one-hop routing of framework messages.
Composing scientific simulations from smaller general pieces has many beneficial properties such ... more Composing scientific simulations from smaller general pieces has many beneficial properties such as modularity and reuse. Component software and scientific workflows are both technologies for decomposition of scientific simulation, although each of them performs this task along a separate dimension and on a different level. Scientific workflows are concerned with high-level orchestration of a time-decomposed simulation, while components are mainly used at a lower level to enable software modularity and reuse at a small performance cost. Combining these technologies in a seamless way leaverages the benefits of both decomposition paradigms, resulting in more flexibility for scientific application design. In this work, we describe a system that communicates parameters and results to and from a Common Component Architecture (CCA) framework and the Kepler scientific workflow system.
Computers and Electronics in Agriculture, 2015
ABSTRACT Precise modeling of field sensor data is an important link in precision agriculture whic... more ABSTRACT Precise modeling of field sensor data is an important link in precision agriculture which uses a wireless network for data collecting and field management. A good sensor model allows accurate prediction of environmental variables even with incomplete sensor data and provides basis to assess the quality of sensor readings. We investigate a clustered sensor model using observations of nearby sensors. The proposed method uses a cluster of self-evolving sub-models to model the dynamic and correlation between the networked field sensors. Each cluster represents a set of closely-related sensor attributes. The model is shown to produce accurate sensor prediction when proper attributes are selected during model training. The clustered sensor model is evaluated using field data collected in a high tunnel greenhouse. Our experiment data indicate that correlation of sensor attributes can be identified from training data and significantly improve prediction accuracy with the presence of faulty sensor data.
Proceedings of the 2014 conference on Innovation & technology in computer science education - ITiCSE '14, 2014
Ninth International Workshop on High-Level Parallel Programming Models and Supportive Environments, 2004. Proceedings., 2004
We present an overview of the SCIRun2 parallel component framework. SCIRun2 is based on the Commo... more We present an overview of the SCIRun2 parallel component framework. SCIRun2 is based on the Common Component Architecture (CCA) and the SCI Institutes' SCIRun[10]. SCIRun2 supports distributed computing through distributed objects. Parallel components are managed transparently over an MxN method invocation and data redistribution subsystem. A meta component model based on CCA is used to accommodate multiple component models such as CCA, CORBA and Dataflow. A group of monitoring components built on top of the TAU toolkit[13] evaluate the performance of the other components.
Proceedings of the 7th ACM symposium on QoS and security for wireless and mobile networks - Q2SWinet '11, 2011
ABSTRACT
Parallel Processing for Scientific Computing, 2006
Proceedings of the 2007 symposium on Component and framework technology in high-performance and scientific computing - CompFrame '07, 2007
Parallel components are types of software components that contain Single Program Multiple Data (S... more Parallel components are types of software components that contain Single Program Multiple Data (SPMD) parallel code and are used and defined by the Common Component Architecture (CCA) component model. Parallel Remote Method Invocation (PRMI) defines a communication paradigm between two parallel components of this kind. Within the CCA community, we define PRMI to include two parts: collective invocations and data redistribution. In this paper, we devise a way to build PRMI onto the Babel compiler, which is a central supporting technology of CCA. We perform this integration cleanly, by preserving Babel's design principles and allowing user choice in the wire protocol and parallel communication library. In addition to this, we define a novel set of synchronization options for PRMI that allow trading off synchronization for better performance while not endangering the accuracy of the result.
Proceedings of the 16th international symposium on High performance distributed computing - HPDC '07, 2007
Cyber-Physical Systems (CPSs) is an emerging field of study that offers a wealth of applications ... more Cyber-Physical Systems (CPSs) is an emerging field of study that offers a wealth of applications in many domains of life and has the potential to change the way humans interact with and control the surrounding environment and physical processes. There is a need to prepare computer science students to join the innovation and development of CPSs and their applications. We proposed a cross-curricular enhancement framework that infuses CPS concepts into a few computer science courses from the freshman to the senior years, allowing a continuous exposure of CPS concepts with a gradually increased complexity and scale. In this paper, we introduce a sequence of course modules designed for an introductory computer science course that expose students to mathematical modeling, algorithmic thinking, and their interactions. The course modules leverage affordable robotic systems, require no students' preparation in programming, and are rich in mathematical modeling. An initial implementation ...
Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, 2012
ABSTRACT Interactive mobile applications require a highly available multicast service for informa... more ABSTRACT Interactive mobile applications require a highly available multicast service for information dissemination and collaboration, while being able to withstand mobility-induced network connectivity problems. However, efficient and reliable wireless multicast has remained a difficult challenge. We propose a novel wireless multicast scheme that allows more efficient and mobility-proof multicast in mobile cloud environments. Our scheme uses a distributed caching and deferred acknowledgement (ACK) technique to reduce delivery ACK traffic during a multicast session. Packets with pending ACK are cached in selected network nodes to provide fast re-delivery. A distributed multicast tree construction algorithm is also utilized to provide fast topology repair under dynamic network conditions. The tree maintenance requires each node to keep track of its 2-hop neighborhood connectivity. Our scheme’s ability to overcome frequent network topology changes leads to a low message exchange overhead to correct local topology errors.
2008 IEEE International Symposium on Parallel and Distributed Processing, 2008
This paper presents a system supporting reuse of simulation results in multi-experiment computati... more This paper presents a system supporting reuse of simulation results in multi-experiment computational studies involving independent simulations and explores the benefits of such reuse. Using a SCIRun-based defibrillator device simulation code (DefibSim) and the SimX system for computational studies, this paper demonstrates how aggressive reuse between and within computational studies can enable interactive rates for such studies on a moderate-sized 128-node processor cluster; a brute-force approach to the problem would require two thousand nodes or more on a massively parallel machine for similar performance. Key to realizing these performance improvements is exploiting optimization opportunities that present themselves at the level of the overall workflow of the study as opposed to focusing on individual simulations. Such global optimization approaches are likely to become increasingly important with the shift towards interactive and universal parallel computing.
Advanced Computational Infrastructures for Parallel and Distributed Adaptive Applications, 2009
Proceedings of the 2009 Workshop on Component-Based High Performance Computing - CBHPC '09, 2009
ACM SIGPLAN Notices, 2009
Page 1. Application-Aware Management of Parallel Simulation Collections Siu-Man Yau Vijay Karamch... more Page 1. Application-Aware Management of Parallel Simulation Collections Siu-Man Yau Vijay Karamcheti Denis Zorin Courant Institute of Mathematical Sciences, New York University {smyau,vijayk,dzorin}@cs.nyu.edu ... 35 -30 -25 -20 -15 -10 -5 Vel. difference at height = 0.4 ...
2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum, 2011
Lecture Notes in Computer Science, 2004
Modern microprocessors have sacrificed the exactness of exceptions for improved performance long ... more Modern microprocessors have sacrificed the exactness of exceptions for improved performance long ago. This is a side effect of reordering instructions so that the microprocessor can execute instructions which were not to be executed due to an exception. By throwing more circuits at the problem, microprocessors are designed so that they are able to roll back to the instruction causing the exception. However, some microprocessors, like the HP Alpha, do not roll back and impose a paradigm of inaccurate exceptions. This decision can reduce circuit complexity and increase speed. We propose a similar method of handling exceptions in a component environment that achieves high performance by sacrificing exception accuracy when dealing with parallel Single Program Multiple Data (SPMD) components. The particular domain this design is intended for is high performance computing, which requires maximum resource use and efficiency. A performance-centric way to handle exceptions is explained as well as additional methodology to enforce exception strictness if required.
The Art and Science of Analyzing Software Data, 2015
ABSTRACT A resounding success of the Scientific Discovery through Advanced Computing (SciDAC) pro... more ABSTRACT A resounding success of the Scientific Discovery through Advanced Computing (SciDAC) program is that high-performance computational science is now universally recognized as a critical aspect of scientific discovery [71], complementing both theoretical and experimental research. As scientific communities prepare to exploit unprecedented computing capabilities of emerging leadership-class machines for multi-model simulations at the extreme scale [72], it is more important than ever to address the technical and social challenges of geographically distributed teams that combine expertise in domain science, applied mathematics, and computer science to build robust and flexible codes that can incorporate changes over time. The Center for Technology for Advanced Scientific Component Software (TASCS) tackles these issues by exploiting component-based software development to facilitate collaborative high-performance scientific computing.
As scientific computing experiences continuous growth of the size of simulations, component frame... more As scientific computing experiences continuous growth of the size of simulations, component frameworks intended for scientific computing need to handle more components and execute on numerous hardware resources simultaneously. Our distributed component framework CCALoop presents a novel design that supports scalability in both number of components in the system and distributed computing resources. CCALoop also presents several other beneficial design principles for distributed component frameworks such as fault-tolerance, parallel components, and support for multiple users. To provide scalability it distributes the responsibility for data queries and updates equally to all nodes in the system through a distributed hash table mechanism, while providing low latency in these operation through a method that guarantees one-hop routing of framework messages.
Composing scientific simulations from smaller general pieces has many beneficial properties such ... more Composing scientific simulations from smaller general pieces has many beneficial properties such as modularity and reuse. Component software and scientific workflows are both technologies for decomposition of scientific simulation, although each of them performs this task along a separate dimension and on a different level. Scientific workflows are concerned with high-level orchestration of a time-decomposed simulation, while components are mainly used at a lower level to enable software modularity and reuse at a small performance cost. Combining these technologies in a seamless way leaverages the benefits of both decomposition paradigms, resulting in more flexibility for scientific application design. In this work, we describe a system that communicates parameters and results to and from a Common Component Architecture (CCA) framework and the Kepler scientific workflow system.
Computers and Electronics in Agriculture, 2015
ABSTRACT Precise modeling of field sensor data is an important link in precision agriculture whic... more ABSTRACT Precise modeling of field sensor data is an important link in precision agriculture which uses a wireless network for data collecting and field management. A good sensor model allows accurate prediction of environmental variables even with incomplete sensor data and provides basis to assess the quality of sensor readings. We investigate a clustered sensor model using observations of nearby sensors. The proposed method uses a cluster of self-evolving sub-models to model the dynamic and correlation between the networked field sensors. Each cluster represents a set of closely-related sensor attributes. The model is shown to produce accurate sensor prediction when proper attributes are selected during model training. The clustered sensor model is evaluated using field data collected in a high tunnel greenhouse. Our experiment data indicate that correlation of sensor attributes can be identified from training data and significantly improve prediction accuracy with the presence of faulty sensor data.
Proceedings of the 2014 conference on Innovation & technology in computer science education - ITiCSE '14, 2014
Ninth International Workshop on High-Level Parallel Programming Models and Supportive Environments, 2004. Proceedings., 2004
We present an overview of the SCIRun2 parallel component framework. SCIRun2 is based on the Commo... more We present an overview of the SCIRun2 parallel component framework. SCIRun2 is based on the Common Component Architecture (CCA) and the SCI Institutes' SCIRun[10]. SCIRun2 supports distributed computing through distributed objects. Parallel components are managed transparently over an MxN method invocation and data redistribution subsystem. A meta component model based on CCA is used to accommodate multiple component models such as CCA, CORBA and Dataflow. A group of monitoring components built on top of the TAU toolkit[13] evaluate the performance of the other components.
Proceedings of the 7th ACM symposium on QoS and security for wireless and mobile networks - Q2SWinet '11, 2011
ABSTRACT
Parallel Processing for Scientific Computing, 2006
Proceedings of the 2007 symposium on Component and framework technology in high-performance and scientific computing - CompFrame '07, 2007
Parallel components are types of software components that contain Single Program Multiple Data (S... more Parallel components are types of software components that contain Single Program Multiple Data (SPMD) parallel code and are used and defined by the Common Component Architecture (CCA) component model. Parallel Remote Method Invocation (PRMI) defines a communication paradigm between two parallel components of this kind. Within the CCA community, we define PRMI to include two parts: collective invocations and data redistribution. In this paper, we devise a way to build PRMI onto the Babel compiler, which is a central supporting technology of CCA. We perform this integration cleanly, by preserving Babel's design principles and allowing user choice in the wire protocol and parallel communication library. In addition to this, we define a novel set of synchronization options for PRMI that allow trading off synchronization for better performance while not endangering the accuracy of the result.
Proceedings of the 16th international symposium on High performance distributed computing - HPDC '07, 2007
Cyber-Physical Systems (CPSs) is an emerging field of study that offers a wealth of applications ... more Cyber-Physical Systems (CPSs) is an emerging field of study that offers a wealth of applications in many domains of life and has the potential to change the way humans interact with and control the surrounding environment and physical processes. There is a need to prepare computer science students to join the innovation and development of CPSs and their applications. We proposed a cross-curricular enhancement framework that infuses CPS concepts into a few computer science courses from the freshman to the senior years, allowing a continuous exposure of CPS concepts with a gradually increased complexity and scale. In this paper, we introduce a sequence of course modules designed for an introductory computer science course that expose students to mathematical modeling, algorithmic thinking, and their interactions. The course modules leverage affordable robotic systems, require no students' preparation in programming, and are rich in mathematical modeling. An initial implementation ...
Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, 2012
ABSTRACT Interactive mobile applications require a highly available multicast service for informa... more ABSTRACT Interactive mobile applications require a highly available multicast service for information dissemination and collaboration, while being able to withstand mobility-induced network connectivity problems. However, efficient and reliable wireless multicast has remained a difficult challenge. We propose a novel wireless multicast scheme that allows more efficient and mobility-proof multicast in mobile cloud environments. Our scheme uses a distributed caching and deferred acknowledgement (ACK) technique to reduce delivery ACK traffic during a multicast session. Packets with pending ACK are cached in selected network nodes to provide fast re-delivery. A distributed multicast tree construction algorithm is also utilized to provide fast topology repair under dynamic network conditions. The tree maintenance requires each node to keep track of its 2-hop neighborhood connectivity. Our scheme’s ability to overcome frequent network topology changes leads to a low message exchange overhead to correct local topology errors.
2008 IEEE International Symposium on Parallel and Distributed Processing, 2008
This paper presents a system supporting reuse of simulation results in multi-experiment computati... more This paper presents a system supporting reuse of simulation results in multi-experiment computational studies involving independent simulations and explores the benefits of such reuse. Using a SCIRun-based defibrillator device simulation code (DefibSim) and the SimX system for computational studies, this paper demonstrates how aggressive reuse between and within computational studies can enable interactive rates for such studies on a moderate-sized 128-node processor cluster; a brute-force approach to the problem would require two thousand nodes or more on a massively parallel machine for similar performance. Key to realizing these performance improvements is exploiting optimization opportunities that present themselves at the level of the overall workflow of the study as opposed to focusing on individual simulations. Such global optimization approaches are likely to become increasingly important with the shift towards interactive and universal parallel computing.
Advanced Computational Infrastructures for Parallel and Distributed Adaptive Applications, 2009
Proceedings of the 2009 Workshop on Component-Based High Performance Computing - CBHPC '09, 2009
ACM SIGPLAN Notices, 2009
Page 1. Application-Aware Management of Parallel Simulation Collections Siu-Man Yau Vijay Karamch... more Page 1. Application-Aware Management of Parallel Simulation Collections Siu-Man Yau Vijay Karamcheti Denis Zorin Courant Institute of Mathematical Sciences, New York University {smyau,vijayk,dzorin}@cs.nyu.edu ... 35 -30 -25 -20 -15 -10 -5 Vel. difference at height = 0.4 ...
2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum, 2011
Lecture Notes in Computer Science, 2004
Modern microprocessors have sacrificed the exactness of exceptions for improved performance long ... more Modern microprocessors have sacrificed the exactness of exceptions for improved performance long ago. This is a side effect of reordering instructions so that the microprocessor can execute instructions which were not to be executed due to an exception. By throwing more circuits at the problem, microprocessors are designed so that they are able to roll back to the instruction causing the exception. However, some microprocessors, like the HP Alpha, do not roll back and impose a paradigm of inaccurate exceptions. This decision can reduce circuit complexity and increase speed. We propose a similar method of handling exceptions in a component environment that achieves high performance by sacrificing exception accuracy when dealing with parallel Single Program Multiple Data (SPMD) components. The particular domain this design is intended for is high performance computing, which requires maximum resource use and efficiency. A performance-centric way to handle exceptions is explained as well as additional methodology to enforce exception strictness if required.
The Art and Science of Analyzing Software Data, 2015