Most Recent Verify Posts RSS



Machine Learning is Just Like it Sounds

Underpinnings of automation enables functions thought impossible just a few short years ago. Though it sounds quite vague, machine learning (ML) is actually what it says. It lets computers acquire the ability to learn without solutions being explicitly programmed. From a programmer’s point of view, it’s a little bit Meta. …

Read Full Post Posted in Verify | Tagged , , | Leave a comment

Object-Oriented FORTRAN (as Seen by Other Languages)

Though FORTRAN has existed since the late 1950s, it’s only since Fortran 2003 that proper object-oriented programming became possible. Having said that, Fortran 90 introduced modules, and there was a concerted effort to write code in an object-oriented type way. See this, for example. In this article I’ll touch on …

Read Full Post Posted in Verify | Tagged , , , , , | Leave a comment

Using MKL for Fast Vector Math

Last semester I taught a 4000-level computer graphics class. The entire class focused around 3D objects, their animation, and their interaction. Fortunately everyone in the class had taken Calculus 3, Differential Equations and Linear Algebra. The reason this is important is because the math to manipulate 3D objects is crazy …

Read Full Post Posted in Verify | Tagged , , , , | Leave a comment

Making Sense of Parallel Sorts

Sorting is a common procedure in computer science. I spend a week teaching the most common sort of algorithms to my computer science class. I could spend an entire semester teaching all of the sorts in existence since there are so many. But in most situations, there are six common …

Read Full Post Posted in Verify | Tagged , , | Leave a comment

Which is Better: Parallelization or Vectorization?

Parallelization or Vectorization? It’s a slightly odd question, as ideally you would want both. But sometimes, you have to make a choice. Parallelization is where your application uses background threads to do the heavy lifting. Vectorization is where the special vector registers that are typically 128 or 256 bits long …

Read Full Post Posted in Verify | Tagged , , , | Leave a comment

Modernizing Code for Tomorrow’s HPC Problem Solving

Code modernization–and the development of future software–must meet the changing demands of an economy that’s increasingly based on combining modeling, simulation, and virtual prototyping with large volumes of unstructured data and the Internet. This article shares tips on code modernization that are proven valuable for dedicated HPC software developers, domain …

Read Full Post Posted in Verify | Tagged , , , | Leave a comment

When Performance Tuning an App, Do You Have the Right Tools?

To fully utilize today’s hardware, you must modernize your software using software development tools and libraries. This article in the newest Intel Parallel Universe Magazine recommends a methodology for getting the most performance out of your hardware though threading, vectorization, your memory hierarchy, and the tuning of cross-node parallelism using …

Read Full Post Posted in Verify | Tagged , , , , | Leave a comment

Using Intel Trace Analyzer and Collector to Tune MPI

Most of my blogs here at Go Parallel are about parallelization. This includes techniques of employing multiple cores and processors, and taking advantage of processor vectorization. Parallelization is not new; the well-publicized case of Big Blue beating Kasparov in 1997 using parallelization among other techniques underscores its longevity. Since so …

Read Full Post Posted in Verify | Tagged , , , , | Leave a comment

A New Tool for Vectorization Advice

This article in the newest Intel Parallel Universe Magazine demonstrates how to use the Intel Advisor XE tool on real code examples to optimize vector codes. Intel Advisor XE combines dynamic analysis, static binary analysis and compiler reports with recommendations for fixing performance bottlenecks. Read More >>

Read Full Post Posted in Verify | Tagged , , | Leave a comment

Hands On with Intel Vector Advisor XE

The best way to show off software is to use it to solve a problem. Today Ill explore the problem of analyzing a few megabytes of electricity consumption data. The idea is to see how much faster I can make processing the data by using the Intel Advisor XE 2016. …

Read Full Post Posted in Verify | Tagged , , , | Leave a comment