FreeBSD and OpenCL are the best of both worlds. FreeBSD is a light, capable, stable operating system. OpenCL opens up the world of parallel processing and ultra fast number crunching. Believe it or not the two can coexist and you can run OpenCL capable devices on FreeBSD, but it is a little different set up than the same with Linux where everything comes pre packaged.
To start with, I will assume you have a recently installed FreeBSD system that is up and running and that you know basic unix commands and package management tools. …
First of all, let me preface this by saying that I am not part of the physics community. I am a computer scientist, and work with high performance systems related to weather, but it is more of a “How can we make this go faster” perspective instead of developing new models or something cool like that. My math is good for my job, but nowhere near a true physicist level. So, in short if my thinking is way off I am very open to constructive criticism. …
At the tender age of 23, I broke into the software business. After 2 years fixing truck scales, I was thrust into managing 4 people 15 or more years older than me who I was asking basic questions of not just a few months ago. Programming wise I was doing the occasional VBA work with Microsoft Access in the office, and I was actively looking for something a little more challenging mentally. I also felt as out of place as Sean Hannity at a Greenpeace rally due to the age differences, and the fact I was still living with my…
Have you ever wondered why people choose engineering careers and the lifestyle it entails? Have you ever noticed that most dedicated engineers their profession engulfs most of their lives? That’s a good thing, it is probably not what you think, and its worth exploring. I have been a professional software developer for almost twenty years, and I would like to share my perspective on it.
For those of us who have to deal with GIS data, or other complex polygons we are used to seeing algorithms even in the best geometry tools that have N² performance. We twist and contort our code to get every last bit of CPU resources out. Once we get it computing properly then we have to wait again for everything to render. OpenCL has been a great tool for parallel computing, but its non-deterministic requirement makes such calculations unfeasible. I wish to share with you an approach that I recently used that gave me very good results, using both outlines…
This article is part two of my Disassembling C++ series. The first one was here about overloaded functions, and mangling. Some of what we are going to discuss is built on that. An object programmatically is basically a collection of data and functions that serve a similar purpose. For example, you can have a bicycle object that you can call a function to rotate the wheels, and get the wheel count (2) from a variable or an accessor function. There are entire books written on object inheritance, polymorphism, reflection, and other nuances of the object oriented methodology and I really…
In this next series of articles, I will delve into the inner workings of the C++ and how it accomplishes its object oriented behavior. It was after all, one of the first object oriented languages, and is one of the most evolved. It was first released in 1985, but was actually designed in 1979 by Bjarne Stroustrup as a next generation of the popular C programming language developed by Bell Labs. But enough history, you can look it up yourself on wikipedia or go to Bjarne’s home page at http://www.stroustrup.com . The purpose of this isnt to show you how…
Professional software engineer. Math enthusiast. Entrepreneur at heart. http://www.beneschtech.com