Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror

Comment Yes, ASICs are faster due to high specialization (Score 1) 63

There is a general positive correlation between a processor's efficiency and how specialized its function is. Human brains are highly adaptable (at least compared to a modern CPU), and can do a wide variety of tasks, but most of them very slowly. This is why we are perfectly capable of doing basic calculations by hand, but we prefer to have a calculator handy. A CPU is a lot more specialized in that it has a limited set of operations it will be required to perform (the x86_64 instruction set for example). It's still not extremely specialized, but at least it doesn't have to dynamically implement new operations, so it can do many tasks much faster than a neural network. However, a CPU is still too slow when it comes to keeping up with all of the floating point calculations required to power our modern graphics. The CPU's time is too valuable, so we give the CPU its very own calculator AKA a GPU... this calculator has an even smaller number of operations that it can do and it has many parallel channels in which these operations can be performed independently. Now instead of the CPU wasting away doing all of these calculations itself, it just offloads them to the GPU, a more specialized processor.

ASICs (application specific integrated circuits) are the next step in this hierarchy. They have no adaptability beyond what was designed into their circuitry (application specific), which makes them extremely good at exactly one thing... the thing they were designed to do. Because logic is implemented entirely in hardware, there is no constant running back and forth between caches or waiting for a central processor to choose a branch in an 'if' statement or to exit a loop. It's the perfect hardware pipeline. Because there is so little dependency on outside resources, ASICs are inherently highly parallelizable, so you can run very large numbers of them side by side. The bottlenecks of an array of ASICs are mainly how fast you can give them input and how fast you can process their output. This makes them perfectly suited for things like computing hashes for crypto-currency mining.

Comment Social Support? Sure. Financial Support? Nope (Score 1) 161

Parents need to understand that their children's lives are not their lives. Whatever their dreams and aspirations are, they should be supportive. However, I see no reason to financially support children that are chasing a dead dream. Once they turn 18 and aren't trying to find a job, they will learn very quickly just how much money they are capable of making doing nothing more than playing video games. A select few will do fine... most others will quickly find that it makes far more sense to find a traditional job. Some lessons can only be taught the hard way.

Comment Sure ... why wouldn't I? (Score 1) 94

Once they have proven themselves to be equal to or superior to human pilots, which would require a proven track record, I see no reason to fear a plane that can land itself. Hell, let's do away with pilots entirely. A plane that is entirely self-piloting is a plane that can't be easily hijacked by anyone with some basic piloting ability, which could solve our TSA problem. Unfortunately, this creates bigger vulnerability to cyber warfare or GPS spoofing attacks.

Comment If you hate OOP, you do not understand OOP (Score 1) 782

I did not understand or appreciate OOP until I took a full semester class on the subject. This wasn't a class that taught OOP as a supplementary objective... OOP was literally the topic of the class. The professor didn't care about what language we used, though his examples were in C# and Java. After being shown just a handful of basic design patterns, I was convinced that class was the single most valuable class I've taken in my college career. OOP is a beautiful paradigm. Good OOP practices make it much easier for code written by one person to be integrated with code written by another. Procedural programming is fine if you have a very small team size who all have intimate knowledge of the code, but OOP provides a scalability and maintenance advantage that can be difficult to appreciate if you don't understand the theory underlying it. If procedural programming was economically advantageous over OOP, the industry would have noticed by now... if you want to know what the good practices are, just look at what the successful tech giants use... they didn't get to be tech giants by being stupid.

Slashdot Top Deals

"An ounce of prevention is worth a ton of code." -- an anonymous programmer

Working...