SlideShare a Scribd company logo
1 of 6
Download to read offline
Procedia Computer Science 18 (2013) 2187 – 2192
1877-0509 Β© 2013 The Authors. Published by Elsevier B.V.
Selection and peer review under responsibility of the organizers of the 2013 International Conference on Computational Science
doi:10.1016/j.procs.2013.05.389
2013 International Conference on Computational Science
Parallel Programming Approaches for an Agent-based
Simulation of Concurrent Pandemic and Seasonal Influenza
Outbreaks
Milton Soto-Ferraria,
*, Peter Holvenstotb
t , Diana Prietoa
, Elise de Donckerb
r ,
John Kapengab
a
Department of Industrial Engineering, Western Michigan University, Kalamazoo MI 49008-5200, USA
b
Department of Computer Science, Western Michigan University, Kalamazoo MI 49008-5200, USA
Abstract
In this paper we propose parallelized versions of an agent-based simulation for concurrent pandemic and
seasonal influenza outbreaks. The objective of the implementations is to significantly reduce the replication
time and allow faster evaluation of mitigation strategies during an ongoing emergency. The simulation was
initially parallelized using the g++ OpenMP library. We simulated the outbreak in a population of 1,000,000
individuals to evaluate algorithm performance and results. In addition to the OpenMP parallelization, a
proposed CUDA implementation is also presented.
Β© 2013 The Authors. Published by Elsevier B.V.
Selection and/or peer-review under responsibility of the organizers of the 2013 International Conference on Computational
Science
Keywords: Pandemic Outbreak; Simulation; OpenMP; CUDA.
1. Introduction
It is currently impossible to predict the upcoming of a Pandemic Influenza (PI) virus, and its impact on the
population and the public health systems. A recent example is the 2009 H1N1 PI, which differed significantly
from the pandemic outbreak expected by public health authorities worldwide. It was believed that PI was going
to begin in Asia, through the progression of the highly severe but mildly transmissible H5N1 bird flu. Instead,
* Corresponding author E-mail address: miltonrene.sotoferrari@wmich.edu
Available online at www.sciencedirect.com
Β© 2013 The Authors. Published by Elsevier B.V.
Selection and peer review under responsibility of the organizers of the 2013 International Conference on Computational
Science
Open access under CC BY-NC-ND license.
Open access under CC BY-NC-ND license.
2188 Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192
the PI initiated in Mexico, in the form of the H1N1 Swine Flu, which is highly transmissible but not as severe
as the H5N1 virus. These H1N1 features were only recognized after seriously infected cases sought healthcare
and were reported to the surveillance system [1].
Before the 2009 PI, several agent-based (AB) simulation models were created to understand the likely
progression of the disease in the population, and the effect of mitigation strategies in the pandemic progression.
Results from these models were used to create governmental guidelines for the mitigation and containment of
the PI [1]. However, these models were created using the epidemiological features of the H5N1, and some
recommendations were hard to follow for the real H1N1 PI. As an example, Pandemic guidelines
recommended the closure of schools and workplaces once the outbreak was confirmed. But the H1N1 was too
mild to close all the schools and workplaces of an area. In the U.S., a small percentage of locations were closed
during the pandemic period. These lessons from the H1N1 PI, together with the views of federal, state and local
decision makers [2] demonstrate that AB models are yet to be adapted to support operational decisions. Such
decisions usually take place in cycles of 4 to 6 hours during the progression of a PI outbreak.
To support operational decisions, PI simulations must run extremely fast, even with the increase of the
outbreak scale, to allow replication and retrieval of significant results within the operational decision cycle, i.e.,
4-6 hours. These computational gains can be achieved through the use of parallel programming techniques.
Several approaches have been proposed for parallelizing simulations of influenza outbreaks. DiCon [3],
ABM++ [4], and FluTE [5] are examples of MPI implementations. The EpiSimdemics software is an example
of a GPU approach that uses parallel blocks to support locations [6]. Those implementations are designed to
work with AB simulations of one influenza virus, either pandemic or endemic.
In this paper, we present a parallelized version of the AB model described in [7], which simulates the
disease spread of a pandemic and an endemic (seasonal) virus through an urban population. The main feature of
the AB model is that it can easily accommodate the epidemiological features of seasonal and pandemic
outbreaks while both outbreaks are occurring.
The parallelized version of the AB model was developed over the OpenMP parallel environment [8]. We
evaluated the performance of the implementation for 1,000,000 inhabitants. In addition, we propose the
features of a novel CUDA implementation, which is the subject of our future work.
The paper is organized as follows: In section 2, we present the basic and parallelized versions of the
algorithm. The results are presented in section 3. The proposed CUDA implementation and the conclusions are
presented in sections 4 and 5, respectively.
2. Agent-based model description
2.1. Basic version
The basic AB model simulates the spread of a Pandemic H1N1 flu virus, and one of its seasonal antigenic
variants. Both viruses are seeded in an urban population that considers different locations, including schools,
workplaces and errand places. The simulation was populated using information from the Hillsborough County
in Tampa, Florida, USA. The data collected for the simulation were reported in [9], and were obtained from the
2002 U.S. Economic Census, the 2001 American Community Survey, and the 2001 National Household Travel
Survey. For a population of 1,000,000, a total of 12,800 businesses, and 500,000 households were simulated.
The program can be generally described as shown in the flow diagram of figure 1. The diagram shows the
following sequence: First, the program executes a setup routine where simulation parameters are read from text
files. Then, a fixed number of businesses are generated and sized using the census information in the text files.
A fixed number of households are then generated, with each household's size being assigned according to a
census-based probability distribution. In addition, individuals are assigned their personal data including
2189Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192
workplaces and schools. Finally, the initial infection is spread to a fixed number of individuals, as symbolized
by the box number 4 in figure 1.
Box number 5 shows the beginning of the main program loop. Each hour, the program iterates all locations
including households, schools, and workplaces and moves all individuals across locations according to a daily
schedule (boxes 6 and 6a). The locations are iterated again, and for each individual infected with either
seasonal or pandemic viruses, the program generates a number of contacts with other individuals at the new
location, (boxes 7 and 7a). At the end of the day, infected individuals are iterated, and each of their contacts, if
susceptible, has a certain chance of contracting one or both viruses. Selected susceptible individuals then
become infectious (boxes 8, 8a and 8b). In addition to the infection of individuals, already infected individuals
are also evaluated, to determine if their culmination periods have elapsed and they can recover (boxes 8c and
8d). After the simulation has run to completion, individuals are iterated in order to ascertain the number of
infected cases per primary case, i.e., the reproduction number [7]. The boxes representing an iteration of
locations are printed in black.
1. Read Input Files 2. Generate Businesses 3. Generate People 4. Create Initial Infection
5. While Simulation Time < Max:
6. Iterate Locations
7. Iterate Locations
6a. Move people to new location
7a. Generate Contacts
8. If time == 8PM: 8a. Iterate Locations
8c. Iterate Locations
8b. Transmit Infections
8d. Evaluate Recovery
9. Generate Output Statistics
Fig. 1.Basic AB model
2.2. Open MP version
The main program loop was parallelized using an OpenMP parallel-for pragma clause (using a dynamic
schedule with default chunk size for load balancing) before each of the for-loops used to iterate locations
(boxes 6, 7, 8a and 8b of figure 1). Figure 2 shows the pseudocode of the program described in figure 1, and the
additions to the basic code for enabling parallelization (in bold). Testing revealed the dynamic schedule to be
the most efficient. Each location was equipped with an OpenMP mutual-exclusion lock in order to prevent race
conditions. Using this method, a precise order of the individuals within a location array cannot be guaranteed;
so replicates with the same RNG (random number generator) seed may have different outputs. This non-
determinism should not affect the long run measures of central tendency and variability. As the computation
time was inconsequential to the overall running time, the output calculations were not parallelized.
2190 Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192
Fig. 2.OpenMP model
3. Results
Our test environment was the computer cluster in the Department of Computer Science Research laboratory,
at Western Michigan University in Kalamazoo, Michigan. The cluster is a shared memory, multicore and GPU
based system, with multi-core processor. The program was built in g++ -fopenmp compilation using Linux.
Figure 3a shows the decrease in runtime from T1 = 1060s when executed sequentially, to approximately T24 =
301s when the number of threads P equals the number of cores, with the OpenMP parallel version. This
amounts to a speedup of S24 = T1/T24 = 3.52 (figure 3b). Increasing the number of threads further (through 32)
leaves the time fairly constant - actually reaching a minimum of 301s at 24 threads.
Fig. 3.OpenMP results
1: Read inputs ( )
2: Generate businesses ( )
3: Generate people ( )
4: Create initial infection ( )
5: While simulation time < max
6: (Parallel) for each location
7: Move people to new location
8: (Parallel) for each location
9: Individuals make contacts
10: If hour = = 8pm
11: (Parallel) for each location
12: Individuals transmit infection
13: (Parallel) for each location
14: Individuals become infectious or recover
15: Compute statistics and terminate
0
200
400
600
800
1000
1200
1 2 4 8 10 12 16 20 24
RunTime(s)
P
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
1 2 4 8 10 12 16 20 24
Speedup
P
(a)
(b)
2191Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192
4. Proposed CUDA Approach
The most computationally intensive portion of the AB simulation is the modeling of interactions between
the individuals within the locations. We initially tried to locate the household interactions within the GPU,
while the host was running the workplace and errand interactions. But the running time for this implementation
was slower than the times obtained with our OpenMP implementation. In addition, we faced load balancing
issues with the scarce memory of the GPU.
We now propose a CUDA implementation of the model, which is expected to perform significantly faster
than our OpenMP version of the code. As depicted in figure 4, the proposed CUDA approach generates the
inputs and schedules for the agents on the host based on demographic data (we assume that data should have
been collected for every population center before generating all the agents); hereafter the kernel is invoked to
perform all interactions among the individuals on the GPU. Each block on the grid will support an AB
simulation of a population center (e.g., a town, a county, a province or a more populated region).
Synchronization among blocks will occur based on probabilistic assessments on the number of people traveling
from one locality to the other. When the running time is complete, a reduce clause accumulates the value for
the reproduction number of the disease. Then the value is sent back to the CPU for the analysis, calibration and
evaluation of the results.
To develop the implementation, we will need to perform several experiments. First, we will need to
determine the optimal ailable information per
population center (e.g., Census data) and the capabilities of the hardware. Second we will need to determine the
optimal grid configuration to balance the load. Memory layout for coalesced memory access is also a design
priority.
Our CUDA implementation will differ from existing approaches in the way the blocks within the GPUs are
populated. Currently, there exist approaches where the blocks support locations within the GPUs [6]. The issue
with this approach is that, if the blocks are designed to be large, there will be a large number of threads idling
in blocking states for synchronization, which can be exacerbated by large differences in the number of
individuals in each location. We believe that by working with population centers we will be able to reduce the
number of idling threads and increase performance.
Fig. 4. Proposed CUDA implementation
Creation: Inputs, Agents, Random
Schedules
CPU Host GPU Device
BLOCK (0,0)
Grirr d K
BLOCK (0,1)
BLOCK (1,0) BLOCK (1,1)
BLOCK (2,0) BLOCK (2,1)
BLOCK (3,0) BLOCK (3,1)
BLOCK (4,0) BLOCK (4,1)
Kernel Invocation
Interactions (Contacts)
Localities
ReduceClause
Reproduction
Number
RRReeeeeddddduuuccceeeeeCCCllaaauuussseeeee
RRReeeeeppprrrooooddddduuuccctttttiiooonnn
NNNuuummmbbbeeeeerrr
LocalitiesLLoLLoocooccaccaalitiittiteeeseess
K
K
KK
K
KK
K
K
KK
K
KK
Results by Generation
)13KCOL03OLB K
)14KCOL04OLB K
)12KCOL02OLB K
)11KCOL01OLB K
)10KCOL00OLB K
2192 Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192
5. Conclusions
In this paper, we described our parallel implementation of an AB model simulating Pandemic and Seasonal
influenza outbreaks. Our preliminary results show significant reductions in the computational time for a
population of 1,000,000 people. This is just a step in addressing the challenge of simulating outbreaks that are
occurring in reality, and designing powerful decision support tools for operations during emergencies. For such
a purpose, we designed and proposed a CUDA approach that could accommodate the exponential growth of a
nascent outbreak.
This implementation can be extended to severe influenza outbreaks that are not necessarily pandemic, but
could create stresses in the public health system. At the time of writing, the H2N3 outbreak of 2013 was rapidly
escalating in the U.S., and thousands of patients were seeking healthcare and confirmatory testing. Our
implementation could be useful in simulating such situation, if needed.
Acknowledgement. The authors acknowledge support by the National Science Foundation under grant
number 1126438.
References
[1] Prieto D, Das T, Savachkin A, Uribe A, Izurieta R, Malavade S. A systematic review to identify areas of enhancements of pandemic
simulation models for operational use at provincial and local levels. BMC Public Health 2012;12:251.
[2] Rosenfeld LA, Fox CE, Kerr D, Marziale E, Cullum A, Lota K, Stewart J, Thompson M. Use of computer modeling for emergency
preparedness functions by local and state health official: a needs assessment. J Public Health Manage Pract 2009; 15(2):96-104.
[3] Dicon reference [ http://www.bio.utexas.edu/research/meyers/dicon/].
[4] ABM++ reference [https://mission.midas.psc.edu/index.php?option=com_content&view=article&id=85&Itemid=115].
[5] Chao DL, Halloran ME, Obenchain VJ, Longini IM. FluTE, a publicly available stochastic influenza epidemic simulation model. PLoS
Comput Biol 2010, 6:1-8.
[6] Bisset KR, Aji AM, Marathe MV, Feng W. High-performance biocomputing for simulating the spread of contagion over large contact
networks. BMC Genomics 2012; 13(2):S3.
[7] Prieto D, Das T. An operational epidemiological model for calibrating agent-based simulations of co-circulating pandemic and seasonal
influenza outbreaks. Unpublished paper.
[8] http://www.openmp.org, OpenMP website.
[9] Uribe A, Savachkin A, Santana A, Prieto D, Das, T. A predictive decision aid methodology for dynamic mitigation of influenza
pandemics. Special issue on optimization in disaster relief. OR Spectrum 2011; 6 May: 1 36.

More Related Content

Similar to Parallel Programming Approaches Reduce Agent Simulation Runtime by Over 70

COVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELS
COVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELSCOVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELS
COVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELSIRJET Journal
Β 
Enhancing COVID-19 forecasting through deep learning techniques and fine-tuning
Enhancing COVID-19 forecasting through deep learning techniques and fine-tuningEnhancing COVID-19 forecasting through deep learning techniques and fine-tuning
Enhancing COVID-19 forecasting through deep learning techniques and fine-tuningIJECEIAES
Β 
Comparative study of decision tree algorithm and naive bayes classifier for s...
Comparative study of decision tree algorithm and naive bayes classifier for s...Comparative study of decision tree algorithm and naive bayes classifier for s...
Comparative study of decision tree algorithm and naive bayes classifier for s...eSAT Journals
Β 
Virus Analytics Poster
Virus Analytics PosterVirus Analytics Poster
Virus Analytics PosterMichael Atkins
Β 
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...Subhajit Sahu
Β 
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...Subhajit Sahu
Β 
IRJET- A Prediction Engine for Influenza Pandemic using Healthcare Analysis
IRJET- A Prediction Engine for Influenza  Pandemic using Healthcare AnalysisIRJET- A Prediction Engine for Influenza  Pandemic using Healthcare Analysis
IRJET- A Prediction Engine for Influenza Pandemic using Healthcare AnalysisIRJET Journal
Β 
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...IJCNCJournal
Β 
Machine Learning Final presentation
Machine Learning Final presentation Machine Learning Final presentation
Machine Learning Final presentation AyanaRukasar
Β 
From simulated model by bio pepa to narrative language through sbml
From simulated model by bio pepa to narrative language through sbmlFrom simulated model by bio pepa to narrative language through sbml
From simulated model by bio pepa to narrative language through sbmlijctcm
Β 
PREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHES
PREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHESPREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHES
PREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHESIRJET Journal
Β 
Spatial-Temporal Data Science of COVID-19 Data.pptx
Spatial-Temporal Data Science of COVID-19 Data.pptxSpatial-Temporal Data Science of COVID-19 Data.pptx
Spatial-Temporal Data Science of COVID-19 Data.pptxSanjayBhargavMadaman
Β 
Idea Seminar Apr 15 2011
Idea Seminar Apr 15 2011Idea Seminar Apr 15 2011
Idea Seminar Apr 15 2011jwang87
Β 
THE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONS
THE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONSTHE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONS
THE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONSManishReddy706923
Β 
review-mathematical-AI.pdf
review-mathematical-AI.pdfreview-mathematical-AI.pdf
review-mathematical-AI.pdfDavidbham
Β 
Comprehensive study: machine learning approaches for COVID-19 diagnosis
Comprehensive study: machine learning approaches for COVID-19 diagnosis Comprehensive study: machine learning approaches for COVID-19 diagnosis
Comprehensive study: machine learning approaches for COVID-19 diagnosis IJECEIAES
Β 
The prediction of coronavirus disease 2019 outbreak on Bangladesh perspectiv...
The prediction of coronavirus disease 2019 outbreak on  Bangladesh perspectiv...The prediction of coronavirus disease 2019 outbreak on  Bangladesh perspectiv...
The prediction of coronavirus disease 2019 outbreak on Bangladesh perspectiv...IJECEIAES
Β 
SRGE COVID-19 Publications 2020
SRGE COVID-19 Publications 2020SRGE COVID-19 Publications 2020
SRGE COVID-19 Publications 2020Aboul Ella Hassanien
Β 
A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...
A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...
A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...IJCSEA Journal
Β 

Similar to Parallel Programming Approaches Reduce Agent Simulation Runtime by Over 70 (20)

COVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELS
COVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELSCOVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELS
COVID-19 FUTURE FORECASTING USING SUPERVISED MACHINE LEARNING MODELS
Β 
Enhancing COVID-19 forecasting through deep learning techniques and fine-tuning
Enhancing COVID-19 forecasting through deep learning techniques and fine-tuningEnhancing COVID-19 forecasting through deep learning techniques and fine-tuning
Enhancing COVID-19 forecasting through deep learning techniques and fine-tuning
Β 
HPC FINAL PROJECT
HPC FINAL PROJECTHPC FINAL PROJECT
HPC FINAL PROJECT
Β 
Comparative study of decision tree algorithm and naive bayes classifier for s...
Comparative study of decision tree algorithm and naive bayes classifier for s...Comparative study of decision tree algorithm and naive bayes classifier for s...
Comparative study of decision tree algorithm and naive bayes classifier for s...
Β 
Virus Analytics Poster
Virus Analytics PosterVirus Analytics Poster
Virus Analytics Poster
Β 
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Β 
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Massively Parallel Simulations of Spread of Infectious Diseases over Realisti...
Β 
IRJET- A Prediction Engine for Influenza Pandemic using Healthcare Analysis
IRJET- A Prediction Engine for Influenza  Pandemic using Healthcare AnalysisIRJET- A Prediction Engine for Influenza  Pandemic using Healthcare Analysis
IRJET- A Prediction Engine for Influenza Pandemic using Healthcare Analysis
Β 
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
A COMPUTER VIRUS PROPAGATION MODEL USING DELAY DIFFERENTIAL EQUATIONS WITH PR...
Β 
Machine Learning Final presentation
Machine Learning Final presentation Machine Learning Final presentation
Machine Learning Final presentation
Β 
From simulated model by bio pepa to narrative language through sbml
From simulated model by bio pepa to narrative language through sbmlFrom simulated model by bio pepa to narrative language through sbml
From simulated model by bio pepa to narrative language through sbml
Β 
PREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHES
PREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHESPREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHES
PREDICTION OF COVID-19 USING MACHINE LEARNING APPROACHES
Β 
Spatial-Temporal Data Science of COVID-19 Data.pptx
Spatial-Temporal Data Science of COVID-19 Data.pptxSpatial-Temporal Data Science of COVID-19 Data.pptx
Spatial-Temporal Data Science of COVID-19 Data.pptx
Β 
Idea Seminar Apr 15 2011
Idea Seminar Apr 15 2011Idea Seminar Apr 15 2011
Idea Seminar Apr 15 2011
Β 
THE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONS
THE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONSTHE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONS
THE REACTION DATA ANALYSIS OFCOVID-19 VACCINATIONS
Β 
review-mathematical-AI.pdf
review-mathematical-AI.pdfreview-mathematical-AI.pdf
review-mathematical-AI.pdf
Β 
Comprehensive study: machine learning approaches for COVID-19 diagnosis
Comprehensive study: machine learning approaches for COVID-19 diagnosis Comprehensive study: machine learning approaches for COVID-19 diagnosis
Comprehensive study: machine learning approaches for COVID-19 diagnosis
Β 
The prediction of coronavirus disease 2019 outbreak on Bangladesh perspectiv...
The prediction of coronavirus disease 2019 outbreak on  Bangladesh perspectiv...The prediction of coronavirus disease 2019 outbreak on  Bangladesh perspectiv...
The prediction of coronavirus disease 2019 outbreak on Bangladesh perspectiv...
Β 
SRGE COVID-19 Publications 2020
SRGE COVID-19 Publications 2020SRGE COVID-19 Publications 2020
SRGE COVID-19 Publications 2020
Β 
A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...
A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...
A CLOUD-BASED PROTOTYPE IMPLEMENTATION OF A DISEASE OUTBREAK NOTIFICATION SYS...
Β 

More from Subhajit Sahu

DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTESDyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTESSubhajit Sahu
Β 
Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)Subhajit Sahu
Β 
A Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTESA Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTESSubhajit Sahu
Β 
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESScalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESSubhajit Sahu
Β 
Application Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTESApplication Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTESSubhajit Sahu
Β 
Community Detection on the GPU : NOTES
Community Detection on the GPU : NOTESCommunity Detection on the GPU : NOTES
Community Detection on the GPU : NOTESSubhajit Sahu
Β 
Survey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTESSurvey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTESSubhajit Sahu
Β 
Dynamic Batch Parallel Algorithms for Updating PageRank : POSTER
Dynamic Batch Parallel Algorithms for Updating PageRank : POSTERDynamic Batch Parallel Algorithms for Updating PageRank : POSTER
Dynamic Batch Parallel Algorithms for Updating PageRank : POSTERSubhajit Sahu
Β 
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...Subhajit Sahu
Β 
Fast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTESFast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTESSubhajit Sahu
Β 
Can you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTESCan you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTESSubhajit Sahu
Β 
HITS algorithm : NOTES
HITS algorithm : NOTESHITS algorithm : NOTES
HITS algorithm : NOTESSubhajit Sahu
Β 
Basic Computer Architecture and the Case for GPUs : NOTES
Basic Computer Architecture and the Case for GPUs : NOTESBasic Computer Architecture and the Case for GPUs : NOTES
Basic Computer Architecture and the Case for GPUs : NOTESSubhajit Sahu
Β 
Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES
Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDESDynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES
Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDESSubhajit Sahu
Β 
Are Satellites Covered in Gold Foil : NOTES
Are Satellites Covered in Gold Foil : NOTESAre Satellites Covered in Gold Foil : NOTES
Are Satellites Covered in Gold Foil : NOTESSubhajit Sahu
Β 
Taxation for Traders < Markets and Taxation : NOTES
Taxation for Traders < Markets and Taxation : NOTESTaxation for Traders < Markets and Taxation : NOTES
Taxation for Traders < Markets and Taxation : NOTESSubhajit Sahu
Β 
A Generalization of the PageRank Algorithm : NOTES
A Generalization of the PageRank Algorithm : NOTESA Generalization of the PageRank Algorithm : NOTES
A Generalization of the PageRank Algorithm : NOTESSubhajit Sahu
Β 
ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...
ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...
ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...Subhajit Sahu
Β 
Income Tax Calender 2021 (ITD) : NOTES
Income Tax Calender 2021 (ITD) : NOTESIncome Tax Calender 2021 (ITD) : NOTES
Income Tax Calender 2021 (ITD) : NOTESSubhajit Sahu
Β 
Youngistaan Foundation: Annual Report 2020-21 : NOTES
Youngistaan Foundation: Annual Report 2020-21 : NOTESYoungistaan Foundation: Annual Report 2020-21 : NOTES
Youngistaan Foundation: Annual Report 2020-21 : NOTESSubhajit Sahu
Β 

More from Subhajit Sahu (20)

DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTESDyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
DyGraph: A Dynamic Graph Generator and Benchmark Suite : NOTES
Β 
Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)Shared memory Parallelism (NOTES)
Shared memory Parallelism (NOTES)
Β 
A Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTESA Dynamic Algorithm for Local Community Detection in Graphs : NOTES
A Dynamic Algorithm for Local Community Detection in Graphs : NOTES
Β 
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTESScalable Static and Dynamic Community Detection Using Grappolo : NOTES
Scalable Static and Dynamic Community Detection Using Grappolo : NOTES
Β 
Application Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTESApplication Areas of Community Detection: A Review : NOTES
Application Areas of Community Detection: A Review : NOTES
Β 
Community Detection on the GPU : NOTES
Community Detection on the GPU : NOTESCommunity Detection on the GPU : NOTES
Community Detection on the GPU : NOTES
Β 
Survey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTESSurvey for extra-child-process package : NOTES
Survey for extra-child-process package : NOTES
Β 
Dynamic Batch Parallel Algorithms for Updating PageRank : POSTER
Dynamic Batch Parallel Algorithms for Updating PageRank : POSTERDynamic Batch Parallel Algorithms for Updating PageRank : POSTER
Dynamic Batch Parallel Algorithms for Updating PageRank : POSTER
Β 
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Abstract for IPDPS 2022 PhD Forum on Dynamic Batch Parallel Algorithms for Up...
Β 
Fast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTESFast Incremental Community Detection on Dynamic Graphs : NOTES
Fast Incremental Community Detection on Dynamic Graphs : NOTES
Β 
Can you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTESCan you fix farming by going back 8000 years : NOTES
Can you fix farming by going back 8000 years : NOTES
Β 
HITS algorithm : NOTES
HITS algorithm : NOTESHITS algorithm : NOTES
HITS algorithm : NOTES
Β 
Basic Computer Architecture and the Case for GPUs : NOTES
Basic Computer Architecture and the Case for GPUs : NOTESBasic Computer Architecture and the Case for GPUs : NOTES
Basic Computer Architecture and the Case for GPUs : NOTES
Β 
Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES
Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDESDynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES
Dynamic Batch Parallel Algorithms for Updating Pagerank : SLIDES
Β 
Are Satellites Covered in Gold Foil : NOTES
Are Satellites Covered in Gold Foil : NOTESAre Satellites Covered in Gold Foil : NOTES
Are Satellites Covered in Gold Foil : NOTES
Β 
Taxation for Traders < Markets and Taxation : NOTES
Taxation for Traders < Markets and Taxation : NOTESTaxation for Traders < Markets and Taxation : NOTES
Taxation for Traders < Markets and Taxation : NOTES
Β 
A Generalization of the PageRank Algorithm : NOTES
A Generalization of the PageRank Algorithm : NOTESA Generalization of the PageRank Algorithm : NOTES
A Generalization of the PageRank Algorithm : NOTES
Β 
ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...
ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...
ApproxBioWear: Approximating Additions for Efficient Biomedical Wearable Comp...
Β 
Income Tax Calender 2021 (ITD) : NOTES
Income Tax Calender 2021 (ITD) : NOTESIncome Tax Calender 2021 (ITD) : NOTES
Income Tax Calender 2021 (ITD) : NOTES
Β 
Youngistaan Foundation: Annual Report 2020-21 : NOTES
Youngistaan Foundation: Annual Report 2020-21 : NOTESYoungistaan Foundation: Annual Report 2020-21 : NOTES
Youngistaan Foundation: Annual Report 2020-21 : NOTES
Β 

Recently uploaded

πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹
πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹
πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹Sheetaleventcompany
Β 
Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...
Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...
Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...High Profile Call Girls Chandigarh Aarushi
Β 
pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...
pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...
pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...Call Girls Noida
Β 
indian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana Tulsi
indian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana Tulsiindian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana Tulsi
indian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana TulsiHigh Profile Call Girls Chandigarh Aarushi
Β 
Call Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service AvailableDipal Arora
Β 
Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...
Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...
Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...Sheetaleventcompany
Β 
Hot Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Ludhiana
Hot  Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In LudhianaHot  Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Ludhiana
Hot Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In LudhianaRussian Call Girls in Ludhiana
Β 
Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...
Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...
Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...Call Girls Noida
Β 
Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.
Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.
Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.ktanvi103
Β 
Bangalore call girl πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore GIUXUZ...
Bangalore call girl  πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore  GIUXUZ...Bangalore call girl  πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore  GIUXUZ...
Bangalore call girl πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore GIUXUZ...Gfnyt
Β 
Leading transformational change: inner and outer skills
Leading transformational change: inner and outer skillsLeading transformational change: inner and outer skills
Leading transformational change: inner and outer skillsHelenBevan4
Β 
Hot Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Chandigarh
Hot  Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In ChandigarhHot  Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Chandigarh
Hot Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In ChandigarhVip call girls In Chandigarh
Β 
Russian Call Girls Gurgaon Swara 9711199012 Independent Escort Service Gurgaon
Russian Call Girls Gurgaon Swara 9711199012 Independent Escort Service GurgaonRussian Call Girls Gurgaon Swara 9711199012 Independent Escort Service Gurgaon
Russian Call Girls Gurgaon Swara 9711199012 Independent Escort Service GurgaonCall Girls Service Gurgaon
Β 

Recently uploaded (20)

πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹
πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹
πŸ’šπŸ˜‹Mumbai Escort Service Call Girls, β‚Ή5000 To 25K With ACπŸ’šπŸ˜‹
Β 
Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...
Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...
Call Girls Service Chandigarh Grishma β€οΈπŸ‘ 9907093804 πŸ‘„πŸ«¦ Independent Escort Se...
Β 
pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...
pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...
pOOJA sexy Call Girls In Sector 49,9999965857 Young Female Escorts Service In...
Β 
#9711199012# African Student Escorts in Delhi 😘 Call Girls Delhi
#9711199012# African Student Escorts in Delhi 😘 Call Girls Delhi#9711199012# African Student Escorts in Delhi 😘 Call Girls Delhi
#9711199012# African Student Escorts in Delhi 😘 Call Girls Delhi
Β 
Model Call Girl in Subhash Nagar Delhi reach out to us at πŸ”9953056974πŸ”
Model Call Girl in Subhash Nagar Delhi reach out to us at πŸ”9953056974πŸ”Model Call Girl in Subhash Nagar Delhi reach out to us at πŸ”9953056974πŸ”
Model Call Girl in Subhash Nagar Delhi reach out to us at πŸ”9953056974πŸ”
Β 
Call Girl Guwahati Aashi πŸ‘‰ 7001305949 πŸ‘ˆ πŸ” Independent Escort Service Guwahati
Call Girl Guwahati Aashi πŸ‘‰ 7001305949 πŸ‘ˆ πŸ” Independent Escort Service GuwahatiCall Girl Guwahati Aashi πŸ‘‰ 7001305949 πŸ‘ˆ πŸ” Independent Escort Service Guwahati
Call Girl Guwahati Aashi πŸ‘‰ 7001305949 πŸ‘ˆ πŸ” Independent Escort Service Guwahati
Β 
indian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana Tulsi
indian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana Tulsiindian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana Tulsi
indian Call Girl Panchkula β€οΈπŸ‘ 9907093804 Low Rate Call Girls Ludhiana Tulsi
Β 
Call Girl Dehradun Aashi πŸ” 7001305949 πŸ” πŸ’ƒ Independent Escort Service Dehradun
Call Girl Dehradun Aashi πŸ” 7001305949 πŸ” πŸ’ƒ Independent Escort Service DehradunCall Girl Dehradun Aashi πŸ” 7001305949 πŸ” πŸ’ƒ Independent Escort Service Dehradun
Call Girl Dehradun Aashi πŸ” 7001305949 πŸ” πŸ’ƒ Independent Escort Service Dehradun
Β 
Call Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service AvailableCall Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service Available
Call Girls Hyderabad Just Call 9907093804 Top Class Call Girl Service Available
Β 
College Call Girls Dehradun Kavya πŸ” 7001305949 πŸ” πŸ“ Independent Escort Service...
College Call Girls Dehradun Kavya πŸ” 7001305949 πŸ” πŸ“ Independent Escort Service...College Call Girls Dehradun Kavya πŸ” 7001305949 πŸ” πŸ“ Independent Escort Service...
College Call Girls Dehradun Kavya πŸ” 7001305949 πŸ” πŸ“ Independent Escort Service...
Β 
Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...
Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...
Call Girl In Zirakpur ❀️♀️@ 9988299661 Zirakpur Call Girls Near Me ❀️♀️@ Sexy...
Β 
Russian Call Girls in Dehradun Komal πŸ” 7001305949 πŸ” πŸ“ Independent Escort Serv...
Russian Call Girls in Dehradun Komal πŸ” 7001305949 πŸ” πŸ“ Independent Escort Serv...Russian Call Girls in Dehradun Komal πŸ” 7001305949 πŸ” πŸ“ Independent Escort Serv...
Russian Call Girls in Dehradun Komal πŸ” 7001305949 πŸ” πŸ“ Independent Escort Serv...
Β 
Hot Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Ludhiana
Hot  Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In LudhianaHot  Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Ludhiana
Hot Call Girl In Ludhiana πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Ludhiana
Β 
Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...
Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...
Vip sexy Call Girls Service In Sector 137,9999965857 Young Female Escorts Ser...
Β 
Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.
Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.
Call Now ☎ 9999965857 !! Call Girls in Hauz Khas Escort Service Delhi N.C.R.
Β 
VIP Call Girls Lucknow Isha πŸ” 9719455033 πŸ” 🎢 Independent Escort Service Lucknow
VIP Call Girls Lucknow Isha πŸ” 9719455033 πŸ” 🎢 Independent Escort Service LucknowVIP Call Girls Lucknow Isha πŸ” 9719455033 πŸ” 🎢 Independent Escort Service Lucknow
VIP Call Girls Lucknow Isha πŸ” 9719455033 πŸ” 🎢 Independent Escort Service Lucknow
Β 
Bangalore call girl πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore GIUXUZ...
Bangalore call girl  πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore  GIUXUZ...Bangalore call girl  πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore  GIUXUZ...
Bangalore call girl πŸ‘―β€β™€οΈ@ Simran Independent Call Girls in Bangalore GIUXUZ...
Β 
Leading transformational change: inner and outer skills
Leading transformational change: inner and outer skillsLeading transformational change: inner and outer skills
Leading transformational change: inner and outer skills
Β 
Hot Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Chandigarh
Hot  Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In ChandigarhHot  Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Chandigarh
Hot Call Girl In Chandigarh πŸ‘…πŸ₯΅ 9053'900678 Call Girls Service In Chandigarh
Β 
Russian Call Girls Gurgaon Swara 9711199012 Independent Escort Service Gurgaon
Russian Call Girls Gurgaon Swara 9711199012 Independent Escort Service GurgaonRussian Call Girls Gurgaon Swara 9711199012 Independent Escort Service Gurgaon
Russian Call Girls Gurgaon Swara 9711199012 Independent Escort Service Gurgaon
Β 

Parallel Programming Approaches Reduce Agent Simulation Runtime by Over 70

  • 1. Procedia Computer Science 18 (2013) 2187 – 2192 1877-0509 Β© 2013 The Authors. Published by Elsevier B.V. Selection and peer review under responsibility of the organizers of the 2013 International Conference on Computational Science doi:10.1016/j.procs.2013.05.389 2013 International Conference on Computational Science Parallel Programming Approaches for an Agent-based Simulation of Concurrent Pandemic and Seasonal Influenza Outbreaks Milton Soto-Ferraria, *, Peter Holvenstotb t , Diana Prietoa , Elise de Donckerb r , John Kapengab a Department of Industrial Engineering, Western Michigan University, Kalamazoo MI 49008-5200, USA b Department of Computer Science, Western Michigan University, Kalamazoo MI 49008-5200, USA Abstract In this paper we propose parallelized versions of an agent-based simulation for concurrent pandemic and seasonal influenza outbreaks. The objective of the implementations is to significantly reduce the replication time and allow faster evaluation of mitigation strategies during an ongoing emergency. The simulation was initially parallelized using the g++ OpenMP library. We simulated the outbreak in a population of 1,000,000 individuals to evaluate algorithm performance and results. In addition to the OpenMP parallelization, a proposed CUDA implementation is also presented. Β© 2013 The Authors. Published by Elsevier B.V. Selection and/or peer-review under responsibility of the organizers of the 2013 International Conference on Computational Science Keywords: Pandemic Outbreak; Simulation; OpenMP; CUDA. 1. Introduction It is currently impossible to predict the upcoming of a Pandemic Influenza (PI) virus, and its impact on the population and the public health systems. A recent example is the 2009 H1N1 PI, which differed significantly from the pandemic outbreak expected by public health authorities worldwide. It was believed that PI was going to begin in Asia, through the progression of the highly severe but mildly transmissible H5N1 bird flu. Instead, * Corresponding author E-mail address: miltonrene.sotoferrari@wmich.edu Available online at www.sciencedirect.com Β© 2013 The Authors. Published by Elsevier B.V. Selection and peer review under responsibility of the organizers of the 2013 International Conference on Computational Science Open access under CC BY-NC-ND license. Open access under CC BY-NC-ND license.
  • 2. 2188 Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192 the PI initiated in Mexico, in the form of the H1N1 Swine Flu, which is highly transmissible but not as severe as the H5N1 virus. These H1N1 features were only recognized after seriously infected cases sought healthcare and were reported to the surveillance system [1]. Before the 2009 PI, several agent-based (AB) simulation models were created to understand the likely progression of the disease in the population, and the effect of mitigation strategies in the pandemic progression. Results from these models were used to create governmental guidelines for the mitigation and containment of the PI [1]. However, these models were created using the epidemiological features of the H5N1, and some recommendations were hard to follow for the real H1N1 PI. As an example, Pandemic guidelines recommended the closure of schools and workplaces once the outbreak was confirmed. But the H1N1 was too mild to close all the schools and workplaces of an area. In the U.S., a small percentage of locations were closed during the pandemic period. These lessons from the H1N1 PI, together with the views of federal, state and local decision makers [2] demonstrate that AB models are yet to be adapted to support operational decisions. Such decisions usually take place in cycles of 4 to 6 hours during the progression of a PI outbreak. To support operational decisions, PI simulations must run extremely fast, even with the increase of the outbreak scale, to allow replication and retrieval of significant results within the operational decision cycle, i.e., 4-6 hours. These computational gains can be achieved through the use of parallel programming techniques. Several approaches have been proposed for parallelizing simulations of influenza outbreaks. DiCon [3], ABM++ [4], and FluTE [5] are examples of MPI implementations. The EpiSimdemics software is an example of a GPU approach that uses parallel blocks to support locations [6]. Those implementations are designed to work with AB simulations of one influenza virus, either pandemic or endemic. In this paper, we present a parallelized version of the AB model described in [7], which simulates the disease spread of a pandemic and an endemic (seasonal) virus through an urban population. The main feature of the AB model is that it can easily accommodate the epidemiological features of seasonal and pandemic outbreaks while both outbreaks are occurring. The parallelized version of the AB model was developed over the OpenMP parallel environment [8]. We evaluated the performance of the implementation for 1,000,000 inhabitants. In addition, we propose the features of a novel CUDA implementation, which is the subject of our future work. The paper is organized as follows: In section 2, we present the basic and parallelized versions of the algorithm. The results are presented in section 3. The proposed CUDA implementation and the conclusions are presented in sections 4 and 5, respectively. 2. Agent-based model description 2.1. Basic version The basic AB model simulates the spread of a Pandemic H1N1 flu virus, and one of its seasonal antigenic variants. Both viruses are seeded in an urban population that considers different locations, including schools, workplaces and errand places. The simulation was populated using information from the Hillsborough County in Tampa, Florida, USA. The data collected for the simulation were reported in [9], and were obtained from the 2002 U.S. Economic Census, the 2001 American Community Survey, and the 2001 National Household Travel Survey. For a population of 1,000,000, a total of 12,800 businesses, and 500,000 households were simulated. The program can be generally described as shown in the flow diagram of figure 1. The diagram shows the following sequence: First, the program executes a setup routine where simulation parameters are read from text files. Then, a fixed number of businesses are generated and sized using the census information in the text files. A fixed number of households are then generated, with each household's size being assigned according to a census-based probability distribution. In addition, individuals are assigned their personal data including
  • 3. 2189Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192 workplaces and schools. Finally, the initial infection is spread to a fixed number of individuals, as symbolized by the box number 4 in figure 1. Box number 5 shows the beginning of the main program loop. Each hour, the program iterates all locations including households, schools, and workplaces and moves all individuals across locations according to a daily schedule (boxes 6 and 6a). The locations are iterated again, and for each individual infected with either seasonal or pandemic viruses, the program generates a number of contacts with other individuals at the new location, (boxes 7 and 7a). At the end of the day, infected individuals are iterated, and each of their contacts, if susceptible, has a certain chance of contracting one or both viruses. Selected susceptible individuals then become infectious (boxes 8, 8a and 8b). In addition to the infection of individuals, already infected individuals are also evaluated, to determine if their culmination periods have elapsed and they can recover (boxes 8c and 8d). After the simulation has run to completion, individuals are iterated in order to ascertain the number of infected cases per primary case, i.e., the reproduction number [7]. The boxes representing an iteration of locations are printed in black. 1. Read Input Files 2. Generate Businesses 3. Generate People 4. Create Initial Infection 5. While Simulation Time < Max: 6. Iterate Locations 7. Iterate Locations 6a. Move people to new location 7a. Generate Contacts 8. If time == 8PM: 8a. Iterate Locations 8c. Iterate Locations 8b. Transmit Infections 8d. Evaluate Recovery 9. Generate Output Statistics Fig. 1.Basic AB model 2.2. Open MP version The main program loop was parallelized using an OpenMP parallel-for pragma clause (using a dynamic schedule with default chunk size for load balancing) before each of the for-loops used to iterate locations (boxes 6, 7, 8a and 8b of figure 1). Figure 2 shows the pseudocode of the program described in figure 1, and the additions to the basic code for enabling parallelization (in bold). Testing revealed the dynamic schedule to be the most efficient. Each location was equipped with an OpenMP mutual-exclusion lock in order to prevent race conditions. Using this method, a precise order of the individuals within a location array cannot be guaranteed; so replicates with the same RNG (random number generator) seed may have different outputs. This non- determinism should not affect the long run measures of central tendency and variability. As the computation time was inconsequential to the overall running time, the output calculations were not parallelized.
  • 4. 2190 Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192 Fig. 2.OpenMP model 3. Results Our test environment was the computer cluster in the Department of Computer Science Research laboratory, at Western Michigan University in Kalamazoo, Michigan. The cluster is a shared memory, multicore and GPU based system, with multi-core processor. The program was built in g++ -fopenmp compilation using Linux. Figure 3a shows the decrease in runtime from T1 = 1060s when executed sequentially, to approximately T24 = 301s when the number of threads P equals the number of cores, with the OpenMP parallel version. This amounts to a speedup of S24 = T1/T24 = 3.52 (figure 3b). Increasing the number of threads further (through 32) leaves the time fairly constant - actually reaching a minimum of 301s at 24 threads. Fig. 3.OpenMP results 1: Read inputs ( ) 2: Generate businesses ( ) 3: Generate people ( ) 4: Create initial infection ( ) 5: While simulation time < max 6: (Parallel) for each location 7: Move people to new location 8: (Parallel) for each location 9: Individuals make contacts 10: If hour = = 8pm 11: (Parallel) for each location 12: Individuals transmit infection 13: (Parallel) for each location 14: Individuals become infectious or recover 15: Compute statistics and terminate 0 200 400 600 800 1000 1200 1 2 4 8 10 12 16 20 24 RunTime(s) P 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 1 2 4 8 10 12 16 20 24 Speedup P (a) (b)
  • 5. 2191Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192 4. Proposed CUDA Approach The most computationally intensive portion of the AB simulation is the modeling of interactions between the individuals within the locations. We initially tried to locate the household interactions within the GPU, while the host was running the workplace and errand interactions. But the running time for this implementation was slower than the times obtained with our OpenMP implementation. In addition, we faced load balancing issues with the scarce memory of the GPU. We now propose a CUDA implementation of the model, which is expected to perform significantly faster than our OpenMP version of the code. As depicted in figure 4, the proposed CUDA approach generates the inputs and schedules for the agents on the host based on demographic data (we assume that data should have been collected for every population center before generating all the agents); hereafter the kernel is invoked to perform all interactions among the individuals on the GPU. Each block on the grid will support an AB simulation of a population center (e.g., a town, a county, a province or a more populated region). Synchronization among blocks will occur based on probabilistic assessments on the number of people traveling from one locality to the other. When the running time is complete, a reduce clause accumulates the value for the reproduction number of the disease. Then the value is sent back to the CPU for the analysis, calibration and evaluation of the results. To develop the implementation, we will need to perform several experiments. First, we will need to determine the optimal ailable information per population center (e.g., Census data) and the capabilities of the hardware. Second we will need to determine the optimal grid configuration to balance the load. Memory layout for coalesced memory access is also a design priority. Our CUDA implementation will differ from existing approaches in the way the blocks within the GPUs are populated. Currently, there exist approaches where the blocks support locations within the GPUs [6]. The issue with this approach is that, if the blocks are designed to be large, there will be a large number of threads idling in blocking states for synchronization, which can be exacerbated by large differences in the number of individuals in each location. We believe that by working with population centers we will be able to reduce the number of idling threads and increase performance. Fig. 4. Proposed CUDA implementation Creation: Inputs, Agents, Random Schedules CPU Host GPU Device BLOCK (0,0) Grirr d K BLOCK (0,1) BLOCK (1,0) BLOCK (1,1) BLOCK (2,0) BLOCK (2,1) BLOCK (3,0) BLOCK (3,1) BLOCK (4,0) BLOCK (4,1) Kernel Invocation Interactions (Contacts) Localities ReduceClause Reproduction Number RRReeeeeddddduuuccceeeeeCCCllaaauuussseeeee RRReeeeeppprrrooooddddduuuccctttttiiooonnn NNNuuummmbbbeeeeerrr LocalitiesLLoLLoocooccaccaalitiittiteeeseess K K KK K KK K K KK K KK Results by Generation )13KCOL03OLB K )14KCOL04OLB K )12KCOL02OLB K )11KCOL01OLB K )10KCOL00OLB K
  • 6. 2192 Milton Soto-Ferrari et al. / Procedia Computer Science 18 (2013) 2187 – 2192 5. Conclusions In this paper, we described our parallel implementation of an AB model simulating Pandemic and Seasonal influenza outbreaks. Our preliminary results show significant reductions in the computational time for a population of 1,000,000 people. This is just a step in addressing the challenge of simulating outbreaks that are occurring in reality, and designing powerful decision support tools for operations during emergencies. For such a purpose, we designed and proposed a CUDA approach that could accommodate the exponential growth of a nascent outbreak. This implementation can be extended to severe influenza outbreaks that are not necessarily pandemic, but could create stresses in the public health system. At the time of writing, the H2N3 outbreak of 2013 was rapidly escalating in the U.S., and thousands of patients were seeking healthcare and confirmatory testing. Our implementation could be useful in simulating such situation, if needed. Acknowledgement. The authors acknowledge support by the National Science Foundation under grant number 1126438. References [1] Prieto D, Das T, Savachkin A, Uribe A, Izurieta R, Malavade S. A systematic review to identify areas of enhancements of pandemic simulation models for operational use at provincial and local levels. BMC Public Health 2012;12:251. [2] Rosenfeld LA, Fox CE, Kerr D, Marziale E, Cullum A, Lota K, Stewart J, Thompson M. Use of computer modeling for emergency preparedness functions by local and state health official: a needs assessment. J Public Health Manage Pract 2009; 15(2):96-104. [3] Dicon reference [ http://www.bio.utexas.edu/research/meyers/dicon/]. [4] ABM++ reference [https://mission.midas.psc.edu/index.php?option=com_content&view=article&id=85&Itemid=115]. [5] Chao DL, Halloran ME, Obenchain VJ, Longini IM. FluTE, a publicly available stochastic influenza epidemic simulation model. PLoS Comput Biol 2010, 6:1-8. [6] Bisset KR, Aji AM, Marathe MV, Feng W. High-performance biocomputing for simulating the spread of contagion over large contact networks. BMC Genomics 2012; 13(2):S3. [7] Prieto D, Das T. An operational epidemiological model for calibrating agent-based simulations of co-circulating pandemic and seasonal influenza outbreaks. Unpublished paper. [8] http://www.openmp.org, OpenMP website. [9] Uribe A, Savachkin A, Santana A, Prieto D, Das, T. A predictive decision aid methodology for dynamic mitigation of influenza pandemics. Special issue on optimization in disaster relief. OR Spectrum 2011; 6 May: 1 36.