Installing Nvidia’s CUDA 9.1 on Fedora 27

 

If you’re like me, you to want to make sure that you’re using an up-to-date version of your operating system. This is not a problem for the vast majority of software, but when it comes to CUDA, it seems that NVidia is always a bit behind the times and it seems that only end-of-life versions of Fedora are ever officially supported. This doesn’t prevent you from installing CUDA on non-supported versions of Fedora, it just means you have to jump through a few more hoops.

Below you’ll find how I installed CUDA 9.1 on my Lenovo Ideapad Y700 laptop with NVidia Optimus technology. In the near future I’ll update this post to include desktop instructions, though it seems like there shouldn’t be any major issues there.

Update: A few days ago, I finally updated my desktop to Fedora 27 and installed CUDA 9.1 there. The install went quite smoothly, and I was able to build all the samples by simple going into the main sample directory and typing ‘make’. On my laptop, this worked to a degree, but since I had to use bumblebee, it couldn’t locate an NVidia library for one of the samples. On my desktop, this was not an issue. Below, I’ve updated the text to be a bit more general.

Continue reading “Installing Nvidia’s CUDA 9.1 on Fedora 27”

Advertisements

Is it time for me to say goodbye to Fedora?

Screenshot_20170817_110346
The default KDE desktop in Manjaro after a fresh install on my HP Pavilion dv6-6135dx.

Way back in the year of 2012, I made a decision that would change the way that I used a computer from that day forward. Just like many other people, I had always used a version of Microsoft Windows as the operating system on my computers, even the ones I built myself. Using Windows for doing work, however, was becoming increasingly frustrating. It was a huge pain to do development work, especially for a fledgling scientist who had only taken a single programming course and had to figure out everything for myself. The code I had written was slower than molasses on an Alaskan winter day, but the part that was the slowest could be done in parallel. I already had used OpenMP to parallelize the for loop, but it was still going to take forever to run. I learned about GPGPU, OpenCL and CUDA that day. CUDA was the most appealing as it used simple C-like syntax, and I was a C++ programmer. To use CUDA on Windows, I would have needed to purchase Visual Studio, not easy to do on a graduate student’s salary, but I learned you could use it for free on Linux. That was it. The decision was made. That day I installed Fedora 17 on my work desktop, and never looked back. Continue reading “Is it time for me to say goodbye to Fedora?”

Microsoft Violates Wheaton’s Law: The Forced Obsolescence Future

It’s been reported recently by a number of sources that Microsoft has dropped support for a number of Intel Atom processors in the most recent Creators Update. That alone should be cause for alarm for a number of people running some older hardware that still suits their needs. It shows that at any time Microsoft can just stop supporting particular hardware meaning that users of that hardware will stop receiving critical security updates. A software company shouldn’t have that much control over people’s hardware, in my opinion, and this can lead to abuse by Microsoft to force people to buy new computers, and hence new Windows licenses. As bad as that is, the violation of Wheaton’s Law comes from the fact that the devices with said processors where likely shipped with Windows 8 or 8.1, and if the users hadn’t upgraded to Windows 10, they’d be entitled to security updates through 2023, while now they will stop receiving those updates sometime in 2018!

Continue reading “Microsoft Violates Wheaton’s Law: The Forced Obsolescence Future”

The Microsoft Surface Keyboard: Initial Impressions

So, it’s not much of a secret that I dislike Microsoft. Their Anniversary Update of Windows 10 completely screwed over my Linux boot partition on my laptop. However, several months ago I saw a picture of their Surface Keyboard. Not the one that goes with the Surface and serves as its cover, but the one for use with the Surface desktop. This beauty right here

IMG_20170620_083053
The Microsoft Surface Keyboard. Please ignore the tissue box in the background.

Continue reading “The Microsoft Surface Keyboard: Initial Impressions”

Scientific Linux: A distribution you use because you have to.

Screenshot from 2017-06-08 11-18-11
The default desktop on Scientific Linux 7.3

I’ve sat down to write this post several times, and started over each time. Initially, it was going to be to express my frustrations with Scientific Linux and generally just put it down. I stopped, because I continued to play with it, and fixed¬†some of those frustrations, but was still going to make the overall point that the distribution is pointless. Today, after having stepped away for a few days, I’ve softened my position a bit more after thinking about the reasons someone may use the distribution. So, I’m going to start with the punch line, and then present my case below: While there are possible reasons to use Scientific Linux, I would firmly recommend not using it on a personal computer, or for day-to-day use.

Continue reading “Scientific Linux: A distribution you use because you have to.”

How Rust Can be A Good Thing

20160820_135602_richtonehdrLast September I saw this article about a programming language I hadn’t heard about before. That language was Rust. At the time, I played around with it a tiny bit but saw no real compelling reason for me to invest the time into learning another language. Then, earlier this week I saw this article on arXiv, and decided to give Rust another look. Continue reading “How Rust Can be A Good Thing”

Installing Nvidia’s CUDA 8.0 on Fedora 25

UPDATE (December 21, 2017): Fedora 25 is now end-of-life and if you still wish to use CUDA on Fedora 25, CUDA 9.1 includes a repository which should make installation trivial. For Fedora 27 see this new post.

UPDATE (March 28, 2017): I have found a way to use at least some of the C++11 features. See the end of the post for the changes.

It’s been a long time since I’ve posted anything. Since my last post I had to update the operating system on my work desktop as Fedora 23 went end-of-life. While it is possible to simply use dnf to upgrade your system, I have the proprietary Nvidia driver installed on my system for two reason. First, with my graphics cards (GeForce GTX 650’s), the Nouveau driver doesn’t seem to really work. Without fail, after about 30 minutes the screen no longer refreshes, making it seem as though the system is locked up. Second, I do some GPU programming with CUDA which requires the proprietary driver. With the proprietary driver installed, it’s a bit more difficult to upgrade, so I tend to just back everything up and do a clean install.

Having done that recently, I find myself this morning needing to re-install CUDA as I have a computational problem which could benefit from some massive parallelism. I figured I’d go ahead and post the procedure here for my future reference and in case anyone else might benefit from it. Continue reading “Installing Nvidia’s CUDA 8.0 on Fedora 25”