The paper presents the core methodology for assessing solar radiation and energy production on building rooftops and vertical facades (still rarely considered) of the inner-city. This integrated tool ...is based on the use of LiDAR, 2D and 3D cadastral data. Together with solar radiation and astronomical models, it calculates the global irradiance for a set of points located on roofs, ground, and facades. Although the tool takes simultaneously roofs, ground, and facades, different methods of shadow casting are applied. Shadow casting on rooftops is based on image processing techniques. On the other hand, the assessment on facade involves first to create and interpolate points along the facades and then to implement a point-by-point shadow casting routine. The paper is structured in five parts: (i) state of the art on the use of 3D GIS and automated processes in assessing solar radiation in the built environment, (ii) overview on the methodological framework used in the paper, (iii) detailed presentation of the method proposed for solar modeling and shadow casting, in particular by introducing an innovative approach for modeling the sky view factor (SVF), (iv) demonstration of the solar model introduced in this paper through applications in Geneva’s building roofs (solar cadaster) and facades, (v) validation of the solar model in some Geneva’s spots, focusing especially on two distinct comparisons: solar model versus fisheye catchments on partially inclined surfaces (roof component); solar model versus photovoltaic simulation tool PVSyst on vertical surfaces (facades). Concerning the roof component, validation results emphasize global sensitivity related to the density of light sources on the sky vault to model the SVF. The low dense sky model with 145 light sources gives satisfying results, especially when processing solar cadasters in large urban areas, thus allowing to save computation time. In the case of building facades, introducing weighting factor in SVF calculation leads to outputs close to those obtained by PVSyst. Such good validation results make the proposed model a reliable tool to: (i) automatically process solar cadaster on building rooftops and facades at large urban scales and (ii) support solar energy planning and energy transition policies.
•We propose a new optimal automatic load balancing criterion for parallel iterative applications.•We introduce an algorithm for finding the optimal time at which dynamic load balancing should be ...triggered.•Our criterion outperforms state-of-the-art load balancing criteria by up to 17.6%, while being, on average, 4.9% faster.•We show that state-of-the-art automatic load balancing criteria are at most 42% slower than the optimum.
Parallel iterative applications often suffer from load imbalance, one of the most critical performance degradation factors. Hence, load balancing techniques are used to distribute the workload evenly to maximize performance. A key challenge is to know when to use load balancing techniques. In general, this is done through load balancing criteria, which trigger load balancing based on runtime application data and/or user-defined information. In the first part of this paper, we introduce a novel, automatic load balancing criterion derived from a simple mathematical model. In the second part, we propose a branch-and-bound algorithm to find the load balancing iterations that lead to the optimal application performance. This algorithm finds the optimal load balancing scenario in polynomial time while, to the best of our knowledge, it has never been addressed in less than an exponential time. Finally, we compare the performance of the scenarios produced by state-of-the-art load balancing criteria relative to the optimal load balancing scenario in synthetic benchmarks and parallel N-body simulations. In the synthetic benchmarks, we observe that the proposed criterion outperforms the other automatic criteria. In the numerical experiments, we show that our new criterion is, on average, 4.9% faster than state-of-the-art load balancing criteria and can outperform them by up to 17.6%. Moreover, we see in the numerical study that the state-of-the-art automatic criteria are at worst 26.43% slower than the optimum and at best 10% slower.
Most parallel applications suffer from load imbalance, a crucial performance degradation factor. In particle simulations, this is mainly due to the migration of particles between processing elements, ...which eventually gather unevenly and create workload imbalance. Dynamic load balancing is used at various iterations to mitigate load imbalance, employing a partitioning method to divide the computational space evenly while minimizing communications. In this paper, we propose a novel partitioning methodology called “informed partitioning”. It uses information based on the evolution of the computation to reduce the load balancing growth and the number of load balancing calls. In this paper, we illustrate informed partitioning by proposing a new geometric partitioning technique for particles simulations. This technique is derived from the well-known recursive coordinate bisection and employs the velocity of the particles to guide the bisection axis. To properly compare the performance of our new method with existing partitioning techniques during application execution, we introduce an effort metric based on a theoretical model of load balanced parallel application time. We propose a proof-of-concept of informed partitioning, through a numerical study, on three N-Body simulations with various particle dynamics, and we discuss its performance against popular geometric partitioning techniques. Moreover, we show that our effort metric can be used to rank partitioning techniques by their efficiency at any time point during the simulation. Eventually, this could be used to choose the best partitioning on the fly. In the numerical study, we report that our novel concept increases the performance of two experiments out of three by up to 76% and 15%, while being marginally slower by only 3% in one experiment. Also, we discuss the limitations of our implementation of informed partitioning and our effort metric.
•Novel partitioning concept that reduces the load imbalance growth•New metric to evaluate efficiency of partitioning techniques•Our proof-of-concept shows up to 76% performance improvement•Our proof-of-concept reduces load balancing calls by up to a factor ten
In parallel iterative applications, computational efficiency is essential for addressing large problems. Load imbalance is one of the major performance degradation factors of parallel applications. ...Therefore, distributing, cleverly, and as evenly as possible, the workload among processing elements (PE) maximizes application performance. So far, the standard load balancing method consists in distributing the workload evenly between PEs and, when load imbalance appears, redistributing the extra load from overloaded PEs to underloaded PEs. However, this does not anticipate the load imbalance growth that may continue during the next iterations. In this paper, we present a first step toward a novel philosophy of load balancing that unloads the PEs that will be overloaded in the near future to let the application rebalance itself via its own dynamics. Herein, we present a formal definition of our new approach using a simple mathematical model and discuss its advantages compared to the standard load balancing method. In addition to the theoretical study, we apply our method to an application that reproduces the computation of a fluid model with non-uniform erosion. The performance validates the benefit of anticipating load imbalance. We observed up to 16% performance improvement compared to the standard load balancing method.
Most parallel applications suffer from load imbalance, a crucial performance degradation factor. In particle simulations, this is mainly due to the migration of particles between processing elements, ...which eventually gather unevenly and create workload imbalance. Dynamic load balancing is used at various iterations to mitigate load imbalance, employing a partitioning method to divide the computational space evenly while minimizing communications. In this paper, we propose a novel partitioning methodology called ``informed partitioning''. It uses information based on the evolution of the computation to reduce the load balancing growth and the number of load balancing calls. We illustrate informed partitioning by proposing a new geometric partitioning technique for particles simulations. This technique is derived from the well-known recursive coordinate bisection and employs the velocity of the particles to guide the bisection axis. To properly compare the performance of our new method with existing partitioning techniques during application execution, we introduce an effort metric based on a theoretical model of load balanced parallel application time. We propose a proof-of-concept of informed partitioning, through a numerical study, on three N-Body simulations with various particle dynamics, and we discuss its performance against popular geometric partitioning techniques. Moreover, we show that our effort metric can be used to rank partitioning techniques by their efficiency at any time point during the simulation. Eventually, this could be used to choose the best partitioning on the fly. In the numerical study, we report that our novel concept increases the performance of two experiments out of three by up to 76% and 15%, while being marginally slower by only \(3\%\) in one experiment. Also, we discuss the limitations of our implementation of informed partitioning and our effort metric.
Parallel iterative applications often suffer from load imbalance, one of the most critical performance degradation factors. Hence, load balancing techniques are used to distribute the workload evenly ...to maximize performance. A key challenge is to know \textit{when} to use load balancing techniques. In general, this is done through load balancing criteria, which trigger load balancing based on runtime application data and/or user-defined information. In the first part of this paper, we introduce a novel, automatic load balancing criterion derived from a simple mathematical model. In the second part, we propose a branch-and-bound algorithm to find the load balancing iterations that lead to the optimal application performance. This algorithm finds the optimal load balancing scenario in quadratic time while, to the best of our knowledge, this has never been addressed in less than an exponential time. Finally, we compare the performance of the scenarios produced by state-of-the-art load balancing criteria relative to the optimal load balancing scenario in synthetic benchmarks and parallel N-body simulations. In the synthetic benchmarks, we observe that the proposed criterion outperforms the other automatic criteria. In the numerical experiments, we show that our new criterion is, on average, \(4.9\%\) faster than state-of-the-art load balancing criteria and can outperform them by up to \(17.6\%\). Moreover, we see in the numerical study that the state-of-the-art automatic criteria are at worst \(47.4\%\) slower than the optimum and at best \(16.5\%\) slower.
Parallel applications are highly irregular and high performance computing (HPC) infrastructures are very complex. The HPC applications of interest herein are timestepping scientific applications ...(TSSA). Often, TSSA involve the repeated execution of multiple parallel loops with thousands of iterations and irregular behavior. Dynamic loop scheduling (DLS) techniques were developed over time and have proven to be effective in scheduling parallel loops for achieving load balancing of TSSA. Using a single particular DLS technique throughout the entire execution of a time-step, or even over the entire application, does not guarantee optimal performance due to the unpredictable variations in problem and algorithmic characteristics as well as those of the infrastructure capabilities. For that reason, an autonomic selection of DLS techniques as function of the parallel loop execution time has shown to improve application performance. Recently, a robustness metric of DLS techniques, named "flexibility", has been proposed to estimate the capability of a DLS technique to resist to variations in the loop iterations execution time. To improve the performance of TSSA, we propose in this work an approach that involves the autonomic selection of DLS techniques as function of the flexibility of DLS techniques. The first major novelty of our approach lies in the use of state-of-the-art reinforcement learning (RL) algorithms as smart agents. The second novelty lies in the design of a modified flexibility metric. The third major novelty resides in using the new modified flexibility metric as a reward for the smart agents. The fourth novelty is the evaluation of the proposed approach within a simulated environment, in particular using the SimGrid-SMPI interface to execute DLS algorithms. We discuss the advantages and the limitations of the new proposed flexibility metric as a reward.
Nowadays, the energy production from solar radiation becomes more important in the light of current environmental challenges. Current research aims at combining solar energy generation with urban ...planning in order to maximize efficiency. The goal is to evaluate the potential of building roofs located in urban areas for producing solar energy. This paper deals with a decision support system that calculates the solar energy potential of surfaces in urban landscapes. The system should identify "good candidate" roofs for installing solar panels. It should quantify the solar power a roof could generate by taking into account local weather, roof's orientation and how much shade falls on it from nearby trees and buildings. The system is based on a CPU and memory intensive "shadow process" algorithm. We propose two paradigms to describe this algorithm. The first is based on a conventional parallelization. The second paradigm is based on an optimized data distribution. The two paradigms have been implemented on cloud computing infrastructures. The paper compares the two methods on the basis of two criteria: performance and deployment cost.
In parallel iterative applications, computational efficiency is essential for addressing large problems. Load imbalance is one of the major performance degradation factors of parallel applications. ...Therefore, distributing, cleverly, and as evenly as possible, the workload among processing elements (PE) maximizes application performance. So far, the standard load balancing method consists in distributing the workload evenly between PEs and, when load imbalance appears, redistributing the extra load from overloaded PEs to underloaded PEs. However, this does not anticipate the load imbalance growth that may continue during the next iterations. In this paper, we present a first step toward a novel philosophy of load balancing that unloads the PEs that will be overloaded in the near future to let the application rebalance itself via its own dynamics. Herein, we present a formal definition of our new approach using a simple mathematical model and discuss its advantages compared to the standard load balancing method. In addition to the theoretical study, we apply our method to an application that reproduces the computation of a fluid model with non-uniform erosion. The performance validates the benefit of anticipating load imbalance. We observed up to 16% performance improvement compared to the standard load balancing method.