Thursday, June 9, 2011

Why AMD Fails

With the merger of ATi and AMD the new AMD Fusion platform offers far better value for money performance than Intel. However, AMD is still no more near Intel when it comes to mass adoption. Why? The reason is twofold:

1. Creates hype early but comes to party very late: Take for example the Fusion APU hoopla. AMD announced this groundbreaking technology 6 years back and kept on shelving for very long till Intel appropriated similar technology into Sandy Bridge. Sure, even now Fusion is a better proposition against any of Intel's Atom architecture. But sadly, Atom has become ubiquitous before Fusion knocks the door.

2. Great hardware but poor driver/software support: Creating new technology and throwing benchmarks of the same is not everything. AMD raved for its DirectX 11 and UVD support on the Fusion platform. It's great. But failed measurable in bringing out opensource drivers in a comparable time limit. Even today opensource Fusion driver support is bad at best. Be it gallium, catalyst or the inbuilt drivers of kernel 2.6.38, none work as well as they were tauted. The whole of device innovation trashed due to lack of proper software support. Whereas, Intel has promptly provided device drivers for Sandy Bridge. Intel's open-source VA-API implementation into graphics hardware is better off in many regards than AMD's XvBA under Linux. These days, VA-API works quite well and Intel even recently introduced support not only for video decoding, but also video encoding, using the VA-API library with the new Sandy Bridge hardware. Intel's next-generation Ivy Bridge support should be the same way. The recent Intel SNA technology has boosted Sandy Bridge as well as earlier Intel IGP performance to a great extent. Here AMD lags.

Weird Dependency of Packages in Linux World

Often, even today, I come across many problems related to package dependency in linux. Most of them suck while you are installing certain packages offline or building some packages from source. However, the worst still yet, as per my opinion is those weird packages that you can't remove. If you dare to remove them you're going to uninstall some key packages from the system. That may render your PC useless!

There are thousands of such cases. Here I will cite just four: fortune cookies, cowsay, libthai and libgweather.

Last night, I was trimming Linux Mint Julia on a friend's netbook. The netbook was running on a bare-and-basic intel N450 platform. I removed as much packages as possible. But while removing those weird four packages I got frightening warnings.

While removing libthai, I got a warning (click on the pic below to see it on true aspect/size) that it was going to remove alacarte, artha, bleachbit, avidemux and some 94 other packages. Damn, what libthai has to do with my computing life! I never browse Thai websites for work and/or fun. Why the heck it's dependency with some core/key packages? Why not libindic or libafrica (if they exist at all) is such a dependency?

Next weird dependency is the combination of fortune-cookies (fortune-min, fortune-mod, fortune-husse) and cowsay. Try to remove them you'll get a notification to remove ubuntu-minimal, mintsystem and some other core/key packages (click on the pic below to see it on true aspect/size). WTF? Why the gnome or mint (or whosoever) people have bundled these fancy programs as mandatory. Any fortune or cowsay message is a nag for many. Yet, they can't remove them. Sure, there are workarounds to stop fortune and/or cowsay. But... ?

Finally, why is that libgweather an integral part of gnome? Remove libgweather packages warns to remove gnome-panel and indicator applet as well (click on the pic below to see it on true aspect/size). What was wrong in making it as an optional package? I just like clock, vol applet and network monitor on my gnome systray; sane and usable.

As I said there are hundreds such weird packages that are built as key dependency with some other really important packages. Seems, the linux world is leaning more towards fancy than function.

How about this