Open Access. Powered by Scholars. Published by Universities.®

Physical Sciences and Mathematics Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 2 of 2

Full-Text Articles in Physical Sciences and Mathematics

Efficient Implementation Of Reductions On Gpu Architectures, Stephen W. Timcheck Jan 2017

Efficient Implementation Of Reductions On Gpu Architectures, Stephen W. Timcheck

Williams Honors College, Honors Research Projects

With serial, or sequential, computational operations' growth rate slowing over the past few years, parallel computing has become paramount to achieve speedup. In particular, GPUs (Graphics Processing Units) can be used to program parallel applications using a SIMD (Single Instruction Multiple Data) architecture. We studied SIMD applications constructed using the NVIDIA CUDA language and MERCATOR (Mapping EnumeRATOR for CUDA), a framework developed for streaming dataflow applications on the GPU. A type of operation commonly performed by streaming applications is reduction, a function that performs some associative operation on multiple data points such as summing a list of numbers (additive operator, …


Implementation Of Cuda Accelerated Bayesian Network Learning, Joseph Haddad Jan 2017

Implementation Of Cuda Accelerated Bayesian Network Learning, Joseph Haddad

Williams Honors College, Honors Research Projects

Bayesian networks can be used to analyze and find relationships among genetic profiles. Unfortunately, Bayesian network learning is an NP­-hard algorithm and thus takes a significant amount of time to generate an output. There has been research in this area in attempts to make this algorithm quicker, such as utilizing consensus networks. Consensus networks are aggregations of many “cheaper” Bayesian networks that are used to formulate a bigger picture. These “cheaper” networks have their search­ spaces restricted, and thus more are required to extract the relationships among the data points.

To accomplish this, I implemented Bayesian network learning in C++, …