Geostatistical interpolation (Kriging) can be useful in a great number of applications where high fidelity models are required for mapping spatial effects and making predictions based on observations. It is widely utilized in the domain of spatial analysis and computer experiments and heavily used by the US Air Force and GIS services. The following images by Yang, et. al. … [Read more...]
ORNL Introductory Tutorials On Concurrent Kernels
The OLCF at Oakridge National Laboratory (ORNL) is working to educate users about how to best use their computing resources. As part of that process, the OLCF has published two very introductory tutorials to teach how to utilize concurrent kernels on their systems. Part 1 (concurrent kernels) and Part 2 (batched library calls) teach how to launch concurrent kernels using CUDA … [Read more...]
Comparing Managed Memory Between GPUs and Intel Xeon Phi
Managed memory greatly simplifies programming GPUs and Intel Xeon Phi coprocessors (when used in offload mode) because data can be utilized on either the host or the device without having to perform explicit device transfers. Instead the device(s) and host interact through the device driver to transparently migrate data as needed. As a result, application codes tend to be … [Read more...]
DIY Augmented Reality Pinball Using Webcam, Projector, And Whiteboard
Using a webcam, projector, and a whiteboard, engineers at Technion, the Israel Institute of Technology, showed how to create a pinball game where the user draws the ramps, places computer generated flippers and bumpers, as well as adding real obstacles to create the pinball game. Use the techniques discussed in my book, CUDA Application Design and Development and working … [Read more...]
Shared Memory is Simple on Intel Xeon Phi – supports STL!
Shared memory on Intel Xeon Phi, in OpenCL, and CUDA (via managed memory) greatly simplifies programming by eliminating the need to explicitly define all data transfers between host and device memory. Once these implementations mature, it is likely they will become the standard API that programmers use to access data on both Intel Xeon Phi and GPUs. (They also naturally support … [Read more...]
A Simple Way to Add Aspect-Preserving Responsive Design HTML5 Animations Using WebGL
Learn how to include really fast WebGL accelerated interactive 3D content in your posts - including responsive design WordPress sites like TechEnablement! This first in a series of Web-Dev tutorials teaches how to add an interactive 3D text animation to via a simple embedded iframe HTML statement. The CSS is included in the HTML so no site css modifications required! The … [Read more...]
Part 2: No Idle Time CUDA Task Parallelism Across Eight GPUs
Part 1 in this tutorial series showed that task-based parallelism using concurrent kernels can accelerate applications simply by plugging more GPUs into a system - just as the GPU strong scaling execution model can accelerate applications simply by installing a newer GPU containing more SMX (Streaming Multiprocessors). No recompilation required! NVIDIA nvvp timelines show very … [Read more...]
Part 1: Load-Balanced, Strong-Scaling Task-Based Parallelism on GPUs
Achieve a 7.4x speedup with 8 GPUs over the performance of a single GPU through the use of task-based parallelism and concurrent kernels! Traditional GPU programming typically views the GPU as a monolithic device that runs a single parallel kernel across the entire device. This approach is fantastic when one kernel can provide enough work to keep the GPU busy. The conundrum is … [Read more...]
Farber to Teach All-Day Tutorial At Supercomputing Nov 16 2014
Supercomputing 2014 recently approved my proposal for an all-day class "From 'Hello World' to Exascale Using x86, GPUs and Intel Xeon Phi Coprocessors" (tut106s1), at The International Conference for High Performance Computing, Networking, Storage, and Analysis (SC14). I hope to see you on Sunday November 16, 2014 in New Orleans,! Abstract Both GPUs and Intel Xeon Phi … [Read more...]
Combine C-Sharp With CUDA and OpenCL On Linux, iOS, Android and Windows
Google Protobufs (via protobuf-net) in combination with the click-together framework taught in my CUDA and OpenCL tutorials allows C# and .NET programmers to include Linux and Windows GPU and Intel Xeon Phi codes in their workflows. Mono The freely available opensource mono-project creates C# executables that can run unchanged on both Linux and Windows - just copy the … [Read more...]









