Posterous theme by Cory Watilo

Fix qmon and those annoying font errors!

qmon has been a trusty little app since I started troubleshooting ROCKS back in college. Anyhow, at my job I was trying to vnc into our cluster and run qmon and I ran into the infamous font error.



Warning: Cannot convert string "-adobe-helvetica-medium-r-*--14-*-*-*-p-*-*-*" to type FontStruct
Warning: Cannot convert string "-adobe-helvetica-bold-r-*--14-*-*-*-p-*-*-*" to type FontStruct 
Warning: Cannot convert string "-adobe-helvetica-medium-r-*--20-*-*-*-p-*-*-*" to type FontStruct 
Warning: Cannot convert string "-adobe-helvetica-medium-r-*--12-*-*-*-p-*-*-*" to type FontStruct 
Warning: Cannot convert string "-adobe-helvetica-medium-r-*--24-*-*-*-p-*-*-*" to type FontStruct 
Warning: Cannot convert string "-adobe-courier-medium-r-*--14-*-*-*-m-*-*-*" to type FontStruct 
Warning: Cannot convert string "-adobe-courier-bold-r-*--14-*-*-*-m-*-*-*" to type FontStruct 
Warning: Cannot convert string "-adobe-courier-medium-r-*--12-*-*-*-m-*-*-*" to type FontStruct 
Warning: Cannot convert string "-adobe-helvetica-medium-r-*--10-*-*-*-p-*-*-*" to type FontStruct 
X Error of failed request: BadName (named color or font does not exist) 
Major opcode of failed request: 45 (X_OpenFont)
Serial number of failed request: 405 
Current serial number in output stream: 416


Fonts that no longer come default in many OS' today. We're using a RH-flavor-of-the-month-variety. I'm not sure what actually fixed it in the end, but I think this is a pretty good description of the fix: install any X11 org fonts you can find in the repos. For RH that was:

xorg-x11-font-utils xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-fonts-misc

( threw in that last one for good measure.) Then what you might have to do is add those fonts paths to your display settings. Even thought you've installed them, the font paths in X11 aren't automatically used.

xset +fp /usr/share/X11/fonts/(dpi)

where (dpi) is the dpi size you have installed- 100, 75, misc etc. Then you rehash the font paths:

xset fp rehash

Drivl.com | What code DOESN'T do in real life (that it does in the movies)

Following up our article: Top 20 Hackers in Film History and Vibrant's Top 10 Servers in the movies, I felt obligated to dispel some of the notions about programming that these movies endorse. I understand that Hollywood needs to dress things up to make them more entertaining, but in the case of programmers, code, and hackers they've done more than dress things up - they've morphed a little stuffed teddy bear into a cybernetic polar bear covered in christmas lights and phosphorescent hieroglyphics with a fog machine pumping rainbow smoke out of his ass. In other words, they've layered a ridiculous amount of extravagance on top of something that in reality is very grounded.
Drivl.com | What code DOESN'T do in real life (that it does in the movies) OOOOOHHHH, so so true!

Nvidia Halting Chipset Development

Nvidia has confirmed that the company has essentially placed its Nforce chipset line on hiatus, given the legal wrangling between itself and Intel.According to Robert Sherbin, the lead corporate communications spokesman for Nvidia, Nvidia will "postpone further chipset investments".Sherbin also dismissed a report that Nvidia was pulling out of the mid-range and high-end GPU market as "patently untrue". But Nvidia's recent chip introductions do imply a shift in graphics companys traditional stance is underway.
Nvidia Halting Chipset Development - Reviews by PC Magazine I was at GTC and I have to tell you, while Fermi wasn't meant for gaming display, it is meant for a helluva lot more than scientific development.  Coupled with another GPU, Fermi does the heavy duty work and lets another card 'simply' handle the display.  With lots and lots of tech companies demanding faster computers, game developers, animators, imaging applications will forever be changed by this change in focus from NVIDIA. Finally, really fast calculations can be done under your desk... this + CUDA absolutely changes the game plan... including gamers.  Trust me when I say that this market is not small...NVIDIA isn't stupid, I'm sure they've done the math...probably on their own GPUs!  Gamers (me included) need to get over it, for the world GPU market does not revolve around them!

Snow Leopard 10.6 VPN 'fix'

I "fixed" the VPN issue I was having. My built in VPN would also connect but not "ping" other servers within the domain. I manually added the search domains/servers to the VPN connection (Network->VPN Connection->Advanced->DNS tab. When that didn't work, I also added them to my airport connection and voila, it worked... seems as if Apple is not forcing a routing through he VPN connection... my case I also tried the Cisco 2.4 osx client beta and the old client, neither worked for me despite uninstall/install. Create two locations (Home/Office) so that you can keep the Airport settings intact for use at home. 

Also published this at the Apple Discussions board:
http://discussions.apple.com/thread.jspa?messageID=10355054

Hope this helps someone.

MPI vs OpenMP

Given that the numbers of cores in a processor continues to grow (e.g the new six core processor from AMD) single memory domains (motherboards) may have anywhere between 12 and 32 cores in the near future. Here is an interesting scenario. Let’s assume that 12-32 cores systems become common place. If this is enough computing power for your tasks, then how will you approach HPC programming? Will you use MPI because you may want to scale the program to a cluster or will you use something like OpenMP or a new type of multi-core programming tool because it is easier or works better? Could a gulf in HPC programming develop?. Perhaps MPI will still be used for “big cluster HPC” and other methods may be used for “small motherboard HPC”. Of course MPI can always be used on small core counts, but will some point-and-click thread based tool attract more users because “MPI is too hard to program”.

 

Small HPC | Linux Magazine

 

This was something I faced on my last project.  I was trained with MPI, but chose OpenMP for a project that I just could never see it running on a large cluster and plus it was easy to modify from the serial version.  The biggest issue I see with the "ease of use" with OpenMP is that it's too easy to make a data race mistake.  I found that out once I increased my data set to test how well I had indeed parallelized this code and found a data race that had not shown up in a small data set.  I used Sun Studio, but I thought back to webinars I've been watching for Intel's newest Parallel Studio, about using smaller datasets etc... But what they didn't say is that if your program is linear this process works well, but if your program goes off on tangents to reduce problem size and then go back and calculate again, then functions that would normally not show up as "benefiting from parallelization" grind to a halt.  It was familiarity with the program that helped me realize that.  What concerns me is this "ease of use" could very well make anyone out there consider themselves an HPC programmer because they open up VS + IPS and voila! insert #pragma here...before you know it, you've got more threads started than you can count.

Another project before I arrived here involved a program where the scientist couldn't understant why his MPI program kept crashing.  He's passing some huge multi dimensional array that goes well beyond the memory passing limit!  Well, one has to decrease the array, split it, or prioritize what's being passed...but if you're trying to pass some 2GB+ message back and forth constantly, MPI isn't going to help your program much, so whats the point?

Finally, I don't see a either/or choice here really.  They are both good for something, the choice depends on the goal.  It would be nice to get easy scalability with OpenMP, but MPI forces people to think about memory, think about algorithms, think about the problem at hand.  GPGPUs, FPGAs also force you to think about memory management, thread spawning etc.  OpenMP, leaves a lot "open" for common mistakes. The only problem I really see here is that there aren't enough schools out there teaching HPC.  Computational Science/Scientific Programming Departments are just beginning to sprout and in the meanwhile, we're left to learn these things on our own, through trial and error and for those of us who are young, a lot of painful annoying mistakes.   Everyone knows parallelizing hurts, specially for us young n00bs.  But it's beginning to hurt less and less...

AMD Launches 'Instanbul' to compete with Intels pricier 'Dunnington'

The six-core Istanbul processor has begun shipping, and variants focusing on differing levels of power and performance – the HE, SE, and EE versions – will begin shipping by the third quarter... The Istanbul, uses HyperTransport links to connect the microprocessor cores to eliminate processing bottlenecks. Another technology, called "HT Assist," uses part of the level-3 cache as a type of look-up table, eliminating the need to poll each microprocessor when making a cache request for a particular piece of data. Instead, the core only needs to poll one other to find the data's location.
AMD Ships Six-Core 'Istanbul' Server Chip - News and Analysis by PC Magazine It uses DDR2 still while Intel's chip uses the faster (costlier) DDR3.

2009 NVidia GPU Technology Conference

GPU Technology Conference

The GPU Technology Conference is the most significant event in 2009 dedicated to application development on the GPU. Encompassing three simultaneous summits, this event will focus on the latest breakthroughs developers, engineers, and researchers are achieving through the use of the graphics processing unit (GPU) to solve the world’s most important computing challenges.

The GPU Technology Conference will empower developers, engineers, researchers, as well as senior business executives and venture capitalists. Attendees will

  • Learn about the seismic shifts happening in computing
  • Preview disruptive technologies to stay ahead of imminent trends
  • Get tools and techniques to impact mission critical projects now
  • Network with experts and peers from across a broad range of fields
http://www.flock.com">
Media_httplh5ggphtcom_aqphf

RUXCON

GPU Powered Malware - Daniel Reynaud There is an increasing interest in Graphics Processing Units for general-purpose programming, due to their processing power and massively parallel design. Therefore, most consumer graphics hardware are now fully programmable using either Nvidia's CUDA toolkit or AMD/ATI Stream SDK. This presentation will give an analysis of how the GPU can be used by malware as an anti-reverse engineering platform, with examples using the CUDA technology. With CUDA, the GPU is fully programmable in C, but the resulting device program can't be debugged because Nvidia's GPUs do not support this feature natively. As a result, a malware analyst has to use static analysis against the device code in order to understand the malware. But this task is harder with GPU code than with traditional binaries since the source of a CUDA program is compiled to undocumented microcode (and therefore unsupported by standard disassemblers such as IDA Pro). Finally, this presentation will also assess the technical feasibility of an unpacker written fully in device code. Bio: After a 4-years military training in Signals and Electronic Warfare, Daniel Reynaud is now a PhD student in Nancy (France), focusing on the analysis of malware and deobfuscation techniques. He has a background in reverse engineering and finding vulnerabilities in unconventional platforms, such as Java, mobile phones and Firefox extensions. Always looking for new challenges, he is now training to become a cage fighter.
RUXCON Very interesting article.  It wasn't clear if the problem is simply that there are no disassemblers available or that the hardware cannot support it.  Also, certainly possible to use the GPU on purpose, but it's again not clear what sort of avenue malware might use to run code on infected machines using their GPUs... it seems harder for the malware programmer, at least currently, to know what possible hardware would be available to use when it infects a machine since right now GPUs that can run these codes aren't ubiquitous or available (unless its being used like the example shown by the presentation as DOS attack.)  The presenter ofcourse didn't imply a worm/virus of any sort, simply that it could be used for bad things.

 NASA's cloud computing: NEBULA

NEBULA is a Cloud Computing environment developed at NASA Ames Research Center, integrating a set of open-source components into a seamless, self-service platform. It provides high-capacity computing, storage and network connectivity, and uses a virtualized, scalable approach to achieve cost and energy efficiencies.
NASA NEBULA | About NEBULA [caption id="" align="alignleft" width="88" caption="Nebula"]
Media_httpnebulanasag_mwfdf
[/caption] It uses an Amazon Web Services clone called Eucalyptus developed by UCSB.  You can read their paper here or visit their website for more info.  So it appears to be an alternative to AWS for those in academia.  It's still in Beta and there is no information about whether this will be a pay-for-use service like that at AWS.  I welcome anyone using this to let us know their experience.