Andrea Zavanella - Academia.edu (original) (raw)
Papers by Andrea Zavanella
... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSA... more ... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSAICO), Andrea Zavanella is partially supported by a TM-R grant ... [7] J. Hill, B. McColl, D.Stefanescu, M. Goudreau, K. Lang, S. Rao, T. Suel, T. Tsantilas, and R. Bisseling. ...
Springer eBooks, 2000
The paper describes the Skel-BSP Global Optimizer (GO), a compile-time technique tuning the struc... more The paper describes the Skel-BSP Global Optimizer (GO), a compile-time technique tuning the structure of skeletal programs to the characteristics of the target architecture. The GO uses a set of optimization rules predicting the costs of each skeleton. The optimization rules refer to a set of implementation templates developed on top of the EdD-BSP (a variant of the BSP model). The paper describes the Program Annotated Tree representation and the set of transformation rules utilized by the GO to modify the starting program. The optimization phases: balancing, scaling and augmenting are presented and explained running the GO on a cluster of PCs for an image analysis toy-program.
Activity Graphs are introduced as a simple and practical means of capturing model independent asp... more Activity Graphs are introduced as a simple and practical means of capturing model independent aspects of the operational semantics of structured (and in particular, skeletal) parallel programs. AGs provide a notion of parallel activities, dependencies between activities, and the process groupings within which these take place. They are independent of low level details of parallel implementation and so can act as an intermediate layer for compilation to diverse underlying models. The paper introduces Activity Graphs and gives a compilation scheme from a simple skeletal language into them. The compilation process uses a set of graph generators (templates) to derive the Activity Graph. We then describe a simple scheme to transform Activity Graphs to message passing programs.
Springer eBooks, 2000
... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hil... more ... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hill, B. McColl, D. — C. Stefanescu, MW Goudreau, K. Lang, SB Rao, T. Suel, T. Tsantilas, and RH Bisseling. BSPlib: The BSP programming library. Parallel Computing, 24(14), 1998. ...
Mental health and addiction research, 2021
Adolescence is a transitional period from childhood to adulthood in which adolescents experienced... more Adolescence is a transitional period from childhood to adulthood in which adolescents experienced physical, psychological, emotional, and social changes. It is both the healthiest period of the lifespan with respect to measurable parameters of psychophysical health, but at the same time, about half of the mental health problems in adults are estimated to have their onset during this critical time window. Although improving health and well-being of adolescents is a prominent global theme, health policies have responded in a one way approach, that is to evaluating only rates of diseases or negative health behaviours, such as addiction. To our knowledge, it is not available an integrated framework for psychosocial monitoring in youth that encompasses different dimensions of health in relationship with addiction vulnerability. Here, thanks to our experimental evidence collected in adolescents, we suggest a new approach in the field of mental health and prevention and treatment of substance use and abuse.
Lecture Notes in Computer Science, 1999
Stream parallelism allows parallel programs to exploit the potential of executing different parts... more Stream parallelism allows parallel programs to exploit the potential of executing different parts of the computation on distinct input data items. Stream parallelism can also exploit the concurrent evaluation of the same function on different input items. These techniques are usually named "pipelining" and "farming out". The P3L language includes two stream parallel skeletons: the Pipe and the Farm constructors. The paper presents a methodology for efficient implementation of the P3L Pipe and Farm on a BSP computer. The methodology provides a set of analytical models to predict the constructors performance using the BSP cost model. Therefore a set of optimisation rules to decide the optimal degree of parallelism and the optimal size for input tasks (grain) are derived. A prototype has been validated on a Cluster of PC and on a Cray T3D computer.
Lecture Notes in Computer Science, 1998
Springer eBooks, 1999
... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by t... more ... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by the virtual processor assigned to a given worker p. Then we send in parallel ZA/'(p) to all the processors. ... (8) where [ ZAf ] denotes the sum of the sizes of all the ZAf sets computed. ...
Parallel Processing Letters, Dec 1, 2001
The Skeletal approach to parallel programming conjugates a high-level compositional style and eff... more The Skeletal approach to parallel programming conjugates a high-level compositional style and efficiency. A second advantage of Skeletal programming is portability since implementation decisions are usually taken at compile time. The paper claims that an intermediate model embedding the main performance features of the target architecture facilitates performance portability across parallel architectures. This is motivated by describing the Skel-BSP framework which implements a skeleton system on top of a BSP computer. A prototype compiler based on a set of BSP templates is presented together with a set of performance models for each skeleton which allow a local optimization. The paper also introduces a global optimization strategy using a set of transformation rules. This local+global approach seems a viable solution to writing parallel software in machine-independent way (Writing Once and Compiling Everywhere).
Genetic Programming 1998: Proceedings of the Third Annual Conference, 1998
ABSTRACT
Large scale parallel programming projects may become heterogeneous in both language and architect... more Large scale parallel programming projects may become heterogeneous in both language and architectural model. We propose that skeletal programming techniques can alleviate some of the costs involved in designing and porting such programs, illustrating our approach with a simple program which combines shared memory and message passing code. We introduce Activity Graphs as a simple and practical means of capturing model independent aspects of the operational semantics of skeletal parallel programs. They are independent of low level details of parallel implementation and so can act as an intermediate layer for compilation to diverse underlying models. Activity graphs provide a notion of parallel activities, dependencies between activities, and the process groupings within which these take place. The compilation process uses a set of graph generators (templates) to derive the activity graph. We describe simple schemes for transforming activity graphs into message passing programs, targeting both MPI and BSP.
Lecture Notes in Computer Science, 1998
We describe the use of the BSP cost model to optimise programs, based on skeletons or data-parall... more We describe the use of the BSP cost model to optimise programs, based on skeletons or data-parallel operations, in which program components may have multiple implementations. BSP’s view of communication transforms the problem of finding the best implementation choice for each component into a one-dimensional minimisation problem. A shortest-path algorithm that finds optimal implementations in time linear in the number
Proceedings 8th Euromicro Workshop on Parallel and Distributed Processing
... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSA... more ... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSAICO), Andrea Zavanella is partially supported by a TM-R grant ... [7] J. Hill, B. McColl, D.Stefanescu, M. Goudreau, K. Lang, S. Rao, T. Suel, T. Tsantilas, and R. Bisseling. ...
Proceedings of the 2000 ACM symposium on Applied computing - SAC '00, 2000
Activity Graphs are introduced as a simple and practical means of capturing model independent asp... more Activity Graphs are introduced as a simple and practical means of capturing model independent aspects of the operational semantics of structured (and in particular, skeletal) parallel programs. AGs provide a notion of parallel activities, dependencies between activities, and the process groupings within which these take place. They are independent of low level details of parallel implementation and so can act as an intermediate layer for compilation to diverse underlying models. The paper introduces Activity Graphs and gives a compilation scheme from a simple skeletal language into them. The compilation process uses a set of graph generators (templates) to derive the Activity Graph. We then describe a simple scheme to transform Activity Graphs to message passing programs.
Lecture Notes in Computer Science, 1999
... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by t... more ... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by the virtual processor assigned to a given worker p. Then we send in parallel ZA/'(p) to all the processors. ... (8) where [ ZAf ] denotes the sum of the sizes of all the ZAf sets computed. ...
Parallel Processing Letters, 2001
The Skeletal approach to parallel programming conjugates a high-level compositional style and eff... more The Skeletal approach to parallel programming conjugates a high-level compositional style and efficiency. A second advantage of Skeletal programming is portability since implementation decisions are usually taken at compile time. The paper claims that an intermediate model embedding the main performance features of the target architecture facilitates performance portability across parallel architectures. This is motivated by describing the Skel-BSP framework which implements a skeleton system on top of a BSP computer. A prototype compiler based on a set of BSP templates is presented together with a set of performance models for each skeleton which allow a local optimization. The paper also introduces a global optimization strategy using a set of transformation rules. This local+global approach seems a viable solution to writing parallel software in machine-independent way (Writing Once and Compiling Everywhere).
Lecture Notes in Computer Science, 2000
... Page 9. 666 Andrea Zavanella g∞ (µ sec) L (µsec) N1/2 (bytes) p (processors) X M (Backus) 0.8... more ... Page 9. 666 Andrea Zavanella g∞ (µ sec) L (µsec) N1/2 (bytes) p (processors) X M (Backus) 0.8 1500 64 10 X tin tf ilter tconv tred tout ... Springer. [8] JMD Hill, B. McColl, D. — C. Stefanescu, MW Goudreau, K. Lang, SB Rao, T. Suel, T. Tsantilas, and RH Bisseling. ...
High Performance Computing and Networking, 2000
... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hil... more ... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hill, B. McColl, D. — C. Stefanescu, MW Goudreau, K. Lang, SB Rao, T. Suel, T. Tsantilas, and RH Bisseling. BSPlib: The BSP programming library. Parallel Computing, 24(14), 1998. ...
Proceedings of the 2000 ACM symposium on Applied computing - SAC '00, 2000
ABSTRACT Some formalizations have been developed in order to give a complete description of the p... more ABSTRACT Some formalizations have been developed in order to give a complete description of the parallel semantics of P3L, a programming language which ensures both task and data parallelism. However, the description level provided by the employed formalisms is either ...
... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSA... more ... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSAICO), Andrea Zavanella is partially supported by a TM-R grant ... [7] J. Hill, B. McColl, D.Stefanescu, M. Goudreau, K. Lang, S. Rao, T. Suel, T. Tsantilas, and R. Bisseling. ...
Springer eBooks, 2000
The paper describes the Skel-BSP Global Optimizer (GO), a compile-time technique tuning the struc... more The paper describes the Skel-BSP Global Optimizer (GO), a compile-time technique tuning the structure of skeletal programs to the characteristics of the target architecture. The GO uses a set of optimization rules predicting the costs of each skeleton. The optimization rules refer to a set of implementation templates developed on top of the EdD-BSP (a variant of the BSP model). The paper describes the Program Annotated Tree representation and the set of transformation rules utilized by the GO to modify the starting program. The optimization phases: balancing, scaling and augmenting are presented and explained running the GO on a cluster of PCs for an image analysis toy-program.
Activity Graphs are introduced as a simple and practical means of capturing model independent asp... more Activity Graphs are introduced as a simple and practical means of capturing model independent aspects of the operational semantics of structured (and in particular, skeletal) parallel programs. AGs provide a notion of parallel activities, dependencies between activities, and the process groupings within which these take place. They are independent of low level details of parallel implementation and so can act as an intermediate layer for compilation to diverse underlying models. The paper introduces Activity Graphs and gives a compilation scheme from a simple skeletal language into them. The compilation process uses a set of graph generators (templates) to derive the Activity Graph. We then describe a simple scheme to transform Activity Graphs to message passing programs.
Springer eBooks, 2000
... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hil... more ... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hill, B. McColl, D. — C. Stefanescu, MW Goudreau, K. Lang, SB Rao, T. Suel, T. Tsantilas, and RH Bisseling. BSPlib: The BSP programming library. Parallel Computing, 24(14), 1998. ...
Mental health and addiction research, 2021
Adolescence is a transitional period from childhood to adulthood in which adolescents experienced... more Adolescence is a transitional period from childhood to adulthood in which adolescents experienced physical, psychological, emotional, and social changes. It is both the healthiest period of the lifespan with respect to measurable parameters of psychophysical health, but at the same time, about half of the mental health problems in adults are estimated to have their onset during this critical time window. Although improving health and well-being of adolescents is a prominent global theme, health policies have responded in a one way approach, that is to evaluating only rates of diseases or negative health behaviours, such as addiction. To our knowledge, it is not available an integrated framework for psychosocial monitoring in youth that encompasses different dimensions of health in relationship with addiction vulnerability. Here, thanks to our experimental evidence collected in adolescents, we suggest a new approach in the field of mental health and prevention and treatment of substance use and abuse.
Lecture Notes in Computer Science, 1999
Stream parallelism allows parallel programs to exploit the potential of executing different parts... more Stream parallelism allows parallel programs to exploit the potential of executing different parts of the computation on distinct input data items. Stream parallelism can also exploit the concurrent evaluation of the same function on different input items. These techniques are usually named "pipelining" and "farming out". The P3L language includes two stream parallel skeletons: the Pipe and the Farm constructors. The paper presents a methodology for efficient implementation of the P3L Pipe and Farm on a BSP computer. The methodology provides a set of analytical models to predict the constructors performance using the BSP cost model. Therefore a set of optimisation rules to decide the optimal degree of parallelism and the optimal size for input tasks (grain) are derived. A prototype has been validated on a Cluster of PC and on a Cray T3D computer.
Lecture Notes in Computer Science, 1998
Springer eBooks, 1999
... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by t... more ... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by the virtual processor assigned to a given worker p. Then we send in parallel ZA/'(p) to all the processors. ... (8) where [ ZAf ] denotes the sum of the sizes of all the ZAf sets computed. ...
Parallel Processing Letters, Dec 1, 2001
The Skeletal approach to parallel programming conjugates a high-level compositional style and eff... more The Skeletal approach to parallel programming conjugates a high-level compositional style and efficiency. A second advantage of Skeletal programming is portability since implementation decisions are usually taken at compile time. The paper claims that an intermediate model embedding the main performance features of the target architecture facilitates performance portability across parallel architectures. This is motivated by describing the Skel-BSP framework which implements a skeleton system on top of a BSP computer. A prototype compiler based on a set of BSP templates is presented together with a set of performance models for each skeleton which allow a local optimization. The paper also introduces a global optimization strategy using a set of transformation rules. This local+global approach seems a viable solution to writing parallel software in machine-independent way (Writing Once and Compiling Everywhere).
Genetic Programming 1998: Proceedings of the Third Annual Conference, 1998
ABSTRACT
Large scale parallel programming projects may become heterogeneous in both language and architect... more Large scale parallel programming projects may become heterogeneous in both language and architectural model. We propose that skeletal programming techniques can alleviate some of the costs involved in designing and porting such programs, illustrating our approach with a simple program which combines shared memory and message passing code. We introduce Activity Graphs as a simple and practical means of capturing model independent aspects of the operational semantics of skeletal parallel programs. They are independent of low level details of parallel implementation and so can act as an intermediate layer for compilation to diverse underlying models. Activity graphs provide a notion of parallel activities, dependencies between activities, and the process groupings within which these take place. The compilation process uses a set of graph generators (templates) to derive the activity graph. We describe simple schemes for transforming activity graphs into message passing programs, targeting both MPI and BSP.
Lecture Notes in Computer Science, 1998
We describe the use of the BSP cost model to optimise programs, based on skeletons or data-parall... more We describe the use of the BSP cost model to optimise programs, based on skeletons or data-parallel operations, in which program components may have multiple implementations. BSP’s view of communication transforms the problem of finding the best implementation choice for each component into a one-dimensional minimisation problem. A shortest-path algorithm that finds optimal implementations in time linear in the number
Proceedings 8th Euromicro Workshop on Parallel and Distributed Processing
... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSA... more ... A time step is the 0This Work has been partially supported by the italian MURST (Project MOSAICO), Andrea Zavanella is partially supported by a TM-R grant ... [7] J. Hill, B. McColl, D.Stefanescu, M. Goudreau, K. Lang, S. Rao, T. Suel, T. Tsantilas, and R. Bisseling. ...
Proceedings of the 2000 ACM symposium on Applied computing - SAC '00, 2000
Activity Graphs are introduced as a simple and practical means of capturing model independent asp... more Activity Graphs are introduced as a simple and practical means of capturing model independent aspects of the operational semantics of structured (and in particular, skeletal) parallel programs. AGs provide a notion of parallel activities, dependencies between activities, and the process groupings within which these take place. They are independent of low level details of parallel implementation and so can act as an intermediate layer for compilation to diverse underlying models. The paper introduces Activity Graphs and gives a compilation scheme from a simple skeletal language into them. The compilation process uses a set of graph generators (templates) to derive the Activity Graph. We then describe a simple scheme to transform Activity Graphs to message passing programs.
Lecture Notes in Computer Science, 1999
... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by t... more ... We first compute the union set ZAf(p) of all the data in the body-in-list which are used by the virtual processor assigned to a given worker p. Then we send in parallel ZA/'(p) to all the processors. ... (8) where [ ZAf ] denotes the sum of the sizes of all the ZAf sets computed. ...
Parallel Processing Letters, 2001
The Skeletal approach to parallel programming conjugates a high-level compositional style and eff... more The Skeletal approach to parallel programming conjugates a high-level compositional style and efficiency. A second advantage of Skeletal programming is portability since implementation decisions are usually taken at compile time. The paper claims that an intermediate model embedding the main performance features of the target architecture facilitates performance portability across parallel architectures. This is motivated by describing the Skel-BSP framework which implements a skeleton system on top of a BSP computer. A prototype compiler based on a set of BSP templates is presented together with a set of performance models for each skeleton which allow a local optimization. The paper also introduces a global optimization strategy using a set of transformation rules. This local+global approach seems a viable solution to writing parallel software in machine-independent way (Writing Once and Compiling Everywhere).
Lecture Notes in Computer Science, 2000
... Page 9. 666 Andrea Zavanella g∞ (µ sec) L (µsec) N1/2 (bytes) p (processors) X M (Backus) 0.8... more ... Page 9. 666 Andrea Zavanella g∞ (µ sec) L (µsec) N1/2 (bytes) p (processors) X M (Backus) 0.8 1500 64 10 X tin tf ilter tconv tred tout ... Springer. [8] JMD Hill, B. McColl, D. — C. Stefanescu, MW Goudreau, K. Lang, SB Rao, T. Suel, T. Tsantilas, and RH Bisseling. ...
High Performance Computing and Networking, 2000
... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hil... more ... Page 9. 298 Andrea Zavanella 5 Conclusions, Related, and Future Work ... Springer. 6. JMD Hill, B. McColl, D. — C. Stefanescu, MW Goudreau, K. Lang, SB Rao, T. Suel, T. Tsantilas, and RH Bisseling. BSPlib: The BSP programming library. Parallel Computing, 24(14), 1998. ...
Proceedings of the 2000 ACM symposium on Applied computing - SAC '00, 2000
ABSTRACT Some formalizations have been developed in order to give a complete description of the p... more ABSTRACT Some formalizations have been developed in order to give a complete description of the parallel semantics of P3L, a programming language which ensures both task and data parallelism. However, the description level provided by the employed formalisms is either ...