CUDA Love

My special interest is computers. Let's talk geek here.
Post Reply
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

CUDA Love

Post by yogi »

You may never have run across references to CUDA technology because it is something specific to nVidia. They invented it. I don't understand it all but basically it's a form of parallel processing using GPU's. This process can be used to enhance graphics and is commonly found where 3-D rendering is required. It's also what hackers use to mine Bitcoin and the like, but it's popularity prior to cryptocurrency was mainly in the computer gaming community.

Of course nVidia is iconic for other reasons too; one of them is it's adaptation of Optimus software to it's video cards. Optimus is a company involved with many services and nVidia has joined forces with them to apply their ideas to laptop computing. As you know video processing is intense, especially when you have a lot of CUDA's to play with, and using it can play havoc with laptop battery life. Thus, nVidia got the idea of automaticly switching it's power hungry cards on and off as the situation would warrant. This switch control is what Optimus enabled nVidia cards do.

Compared to nVidia, Intel is plain vanilla. However, Intel makes great graphics hardware too and is typically found embedded on motherboards. This combination of Intel and nVidia graphics cards is what I have in my MSI laptop. I knew that at the time of purchase, but I did not know about Optimus, nor did I know what Optimus was even if I saw it referenced. Little did I care because the laptop wasn't purchased for it's great gaming capabilities. I was out to clone the old Toshiba with it's old time graphics and BIOS.

I am now learning about Optimus and how much trouble Linux OS's have with it. I thought that all this time I was merely observing a battle between Linux and nVidia. It turns out that quite a few Linux distro's have the nVidia driver problem down pat. What they don't have is Optimus compatibility. Ubuntu seems to be getting along with it, but I'm now at the point where one of the three Linux OS's will not work with nVidia due to the Optimus feature built into it. They do have a work around, but it's not yet available for the particular model of video card in my laptop. So, Linux Mageia is now trashed and I must reinstall it with the hope it will not interfere with the other two Linux boxes already installed and working well.

Once again I've put a lot of effort into trying to install a driver into a Linux OS. This time my efforts corrupted the system so badly that it will no longer work. There might be a way to fix it, but all I know to do now is re-installation. Mageia will work fine without the nVidia driver installed. That's how I came to the conclusion in another thread saying my laptop is up and running perfectly with 4 operating systems. The Mageia system is very slow to boot and it is the presence of the nVidia card slowing things down. The kernel used by Mageia is the same kernel used by Ubuntu. Ubuntu, as I said, seems to have figured it all out. nVidia is installed and working there, Optimus et. al.. Magia looks a lot like Debian and relies a lot on KDE. Why they can't reproduce what Ubuntu has been successful doing is beyond me. To be fair about it, Ubuntu sucked too prior to using the Linux 5.x kernel. Now that Mageia upgraded it has many improvements. That is the sole reason I reinstalled it recently. I'll be reinstalling one more time this afternoon. :cry:

FWIW
: Windows, by the way, just updated it's Insiders Preview OS. You know, the one that is in beta testing? It's working as it always has with the nVidia card: perfectly.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: CUDA Love

Post by Kellemora »

Hmm. You are way over my head here Yogi.
What would you say if I said that all of the supercomputers at ORNL use nVidia graphics cards.
I know that sounds odd since they don't have graphical displays.
But apparently the graphical cards help do some of the computing.

"Summit, launched in 2018, delivers 8 times the computational performance of Titan’s 18,688 nodes, using only 4,608 nodes. Like Titan, Summit has a hybrid architecture, and each node contains multiple IBM POWER9 CPUs and NVIDIA Volta GPUs all connected together with NVIDIA’s high-speed NVLink. Each node has over half a terabyte of coherent memory (high bandwidth memory + DDR4) addressable by all CPUs and GPUs plus 800GB of non-volatile RAM that can be used as a burst buffer or as extended memory. To provide a high rate of I/O throughput, the nodes are connected in a non-blocking fat-tree using a dual-rail Mellanox EDR InfiniBand interconnect."
"Summit is running Red Hat Enterprise Linux (RHEL) version 7.5."
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: CUDA Love

Post by yogi »

Summit makes about as much sense to me as does Linux Magia and Cuda does to you. :crazy: :mrgreen:

I will say this, however. It's perfectly understandable that a supercomputer would use GPU's to do parallel processing. nVidia has a lot of them which is why hackers love to use them. I've said it elsewhere and I'll just repeat it here for what it's worth. Supercomputers are custom built. The processors and the operating system isn't what you think they are. Fedora may be at the core but it's not the Fedora you can download and run on your desktop. Perhaps it starts that way but it's only a building block for something bigger and better. Likewise with the nVidia cards. They are merely the blocks used to build that brick shithouse. LOL

Getting back to Linux Mageia I can report that I am lost for an explanation here. After crashing the installation by trying to modify it to accept the nVidia video card, I did a plain vanilla install. I didn't modify anything in anticipation of problems. I just downloaded the current (improved) version and installed it. It booted without trouble and is working like gangbusters. I spent several hours yesterday trying to configure the desktop now that I have what they loosely call a stable release. Again, I had to think of you as I went through the dozens upon dozens of adjustments that can be made to the desktop environment; KDE Plasma by the way. It was mind numbing to say the least. It was also frustrating making adjustments and not being able to back out of them. I lost what Windows would call the taskbar and it took an accident to get it back. Admittedly I'm new to Mageia, but these unlimited choices for customization are totally unnecessary. Cute, maybe, if you are more interested in decorations than you are in how things work.

Mageia was build in a way you described to me in another thread. They took Debian, which is more or less useless standing alone, and added whatever makes this distro Mageia. They've been at it for several years apparently over there in France; it's up to version 7.x now. There are a couple quirks that irk. One thing,, for example, is that the installer insists on creating two user accounts. One is root=administrator, and the other is a normal user with a name of my choice, Dennis=normal user. They go through a lot of trouble to keep you out of the root account, by making it a separate login, for example. And the desktop apps available to root are not the same as those available to the regular user. Root has no audio, but does have a partition manager. This is a throwback to the old times when I used UNIX. Rarely did you ever log in as root. Well, in an enterprise environment, that's a very good idea. On a home desktop it's absolutely stupid.

This problem I've been experiencing with nVidia hardware is due to the fact that the developers of Mageia only support drivers that are old. Anything made within the last three years is hit or miss. It's not only video, but also hp print drivers too. And, there I was logged in as root, and tried to do a screenshot. There is no way to do it without compiling some binary you download from Github and try to merge it with some photo viewer that already exists in KDE. WTF is that??? I was surprised but should not have been. Most Linux distributions I've tested do not have a way to make desktop shortcuts. In the case of Ubuntu it's missing because the drag-and-drop function is not available. The easiest way to make a desktop shortcut in Windows (and certain Linux) is to grab the Foxfire address bar and pull it to the desktop. A shortcut is made to that address automatically - unless you are using Ubuntu, Kali, or Magia. I don't know about Mint because I've not tried it there recently.

All of the above, and more, is evidence against the case for open source software. All these systems that I've been having difficulty with are not fully developed. The Linux kernel can't do anything useful on the desktop without some code being written first. The people adding the functionality, because they can and must, are not all on the same page. Thus, it gives the impression that "Linux" is in a state of chaos. We know that's not entirely true because some big corporations will actually pay to use a Linux based OS. The argument that it's in supercomputers too is irrelevant given that those machines are designed to be unique and customized. And, even in the personal computer world there is some happiness because most of those people are stuck on one OS and have not seen what is going on elsewhere. They adapted to the quirks that irk and are happy; just like I am with Windows.

So this is all really very challenging to an old brain such as mine. One reason I got involved with Linux is for this very reason. I know it's not perfect and I wanted some mental challenges. That's also why I favor the beta version of Windows instead of the stable releases. So I'm happy to be solving esoteric problems involving multiple computer operating systems. That and $4 will get me a cup of coffee at Starbucks.
Last edited by yogi on 04 Aug 2019, 19:46, edited 1 time in total.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: CUDA Love

Post by Kellemora »

Ya know Yogi, not too many people go buy a heavy sheet of steel and take it to a heavy metal forming plant to have a frame made for a car, then run off to the tin shop to have sheet steel formed into fenders for them. The slowly collect and have made all the necessary components to build a car exactly like they want it.
NO, most folks will go out and buy a ready-made car, and there are numerous brands and styles to choose from.

There are a few folks who may want to modify their cars and do custom body work to make it look like a Batmobile, but to do so, they don't start with an incompatible body style, like a VW, no, they will start with something like Buick or Chevy, and begin customizing from that point forward. It still won't be easy.

Windoze is like buying a Chrysler Product and using it just the way it is. No other parts will fit it, and it is not easily customized.

Linux on the other hand is like buying a chassis, and many companies make bodies that fit on that chassis.
You can use a body and all the components that go with it for the interior, OR;
How you design the rest of the car is totally up to you, but you have to use compatible components.

You can't put a Ford starter on a Chevy engine, without making serious modifications, and you can't use BSD or RedHat components on GNU or Debian, without making serious modifications either.

If you buy a Video card designed for Windoze, not supported on Linux by the manufacturer, it's like trying to fit a Ford starter on a Chevy engine. In some cases a third party may have made an adapter to fit the Ford starter on a Chevy engine, by the same token, a third party may have made a driver to fit a Windows video card on a Linux box.

How often do you buy 16 inch tires to replace the 14 or 15 inch tires on your car? It is possible by using different wheels and modifying the body of the car, changing a few drive train components so the speedometer reads right, and the gearing is correct for that size tire.

It's much easier to put a round peg in a round hole than trying to fit a square peg in a round hole without one heck of a lot of hammering to do so.

When you build a computer, you select all the right components for it to work properly.
The same approach should be used for whatever OS you are using. If it is Windoze, buy Windows compatible components. If it is for Linux, buy Linux compatible components. This solves 99.999% of the problems!
User avatar
yogi
Posts: 9978
Joined: 14 Feb 2015, 21:49

Re: CUDA Love

Post by yogi »

The Windows vs Linux debate is fruitless and most people engaging in that discussion know it. I've stated my views on that debate implicitly and explicitly over a period of many months, or years, so that it should be clear by now how I see things. Linux is not designed for general consumption; Windows is. The direction one leans depends entirely upon individual needs. I don't think we disagree on that basic premise.

I see some flaws in the Linux philosophy, but that is not an indictment against it. My involvement with Linux is more to improve my understanding of it, and operating systems in general, than it is to use it in some production environment. The nVidia problem with Linux is one of philosophy and not one of mechanics. There are Linux distros that can and do take advantage of all that nVidia has to offer. There are also distros of Linux that maintain a separation of free software verses proprietary software. To me it's a conflict in philosophies and not incompatible hardware/software. Some of my comments in previous threads are direct attacks on that philosophical inconsistency.

Regardless of the state of Linux development or the philosophy driving it, there are certain realities motivating my evaluations. I'm not all that happy with the direction Microsoft is taking Windows. My computing needs at this stage of my life are minor. Any computer can send e-mail and surf the Internet. Satisfaction of my technical curiosity can be just as easily accomplished in the Windows environment as it can be in Linux World. When all the options have equal consequences, then it becomes clear that neither choice has a compelling advantage. That's where I'm at right now. My "Go-To" operating system today is Windows 7, but a decision will need to be made in the near future regarding continuation of that selection. Linux is the only alternative. Thus, I'm not only exercising my intellectual muscles by learning the quirks that irk in Linux OS's, I'm also evaluating the pros and cons. My evaluations appear here because I have no other place to put them.
User avatar
Kellemora
Guardian Angel
Guardian Angel
Posts: 7494
Joined: 16 Feb 2015, 17:54

Re: CUDA Love

Post by Kellemora »

Windows is a stand-alone proprietary computing platform.
Apple/Macintosh is also a stand-alone proprietary computing platform.
As you have pointed out many times, using the name Linux for everything that uses the Linux kernel is improper.
And I agree with your analogy regarding that point.
MAC's are also Linux, but are proprietary.

There are hundreds of Linux Distributions out there to choose from, and honestly, most of them should not be called Linux for the same reason MAC is not called Linux, or Android is not called Linux.

Besides Windows and MAC, other options are BSD, RedHat, Ubuntu/Debian, LInux Mint/Debian, Debian, GNU/Debian, etc. ad infinitum.

Windows basically gives its users zero options, you take what they offer or else go to something else.
MAC does give it's users a couple of option, but not many.
All the rest, built on the Linux kernel offer more options, but this don't mean they are interchangeable.
BSD is not compatible with GNU or RedHat based Distro's, and not with Windows or MAC either.

Basically, Windows is controlled by its owner Microsoft.
Mac is controlled by Apple.
But in Linux, all holy hell breaks loose and anyone can do anything they want with it.
And yes, this can cause problems, which is why there are certain stable Distro's available for those who don't want to mess with figuring out how to change things around. They want a Linux more like Windows with little to no user options.
In steps Ubuntu to fulfill that need. It is still changeable, but comes as a turn-key system.
Some folks wanted more bells and whistles, so along comes Linux Mint as a turn-key system.
Businesses wanted a Linux Distro with commercial support, so there is RedHat's operational plan.

The desktop market is drying up. In the near future, what we will call desktops, will only be workstations capable of connecting to on-line services providing the programs. Computing as we know it will come to an end, nobody will have their own programs for much longer. Everything will be in the cloud!
Post Reply