DOE Announces A High Performance Computing Fortran Compiler Agreement

The U.S. Department of Energy’s National Nuclear Security Administration (NNSA) and its three national labs this week announced they have reached an agreement for an open-source Fortran front-end for Higher Performance Computing (HPC). The agreement is with IBM? Microsoft? Google? Nope, the agreement is with NVIDIA, a company known for making graphics cards for gamers.

The heart of a graphics card is the graphics processor unit (GPU) which is an extremely powerful computing engine. It’s actually got more raw horsepower than the computer CPU, although not as much as many claim. A number of years ago NVIDIA branched into providing compiler toolsets for their GPUs. The obvious goal is to drive sales. NVIDIA will use as a starting point their existing Fortran compiler and integrate it with the existing LLVM compiler infrastructure. That Fortran, it just keeps chugging along.

You can try out GPU programming on your Raspberry Pi. Yup! Even it has one, a Broadcom. Just follow the directions from Raspberry Pi Playground. You’re going to get your hands dirty with assembly language so this is not for the faint hearted. One of the big challenges with GPUs is exchanging data with them which gets into DMA processing. You could also take a look at [Pete Warden’s] work on using the Pi’s GPU.

Still wondering about the performance of CPU vs GPU? Here’s Adam Savage taking a look…

Continue reading “DOE Announces A High Performance Computing Fortran Compiler Agreement”

Code Craft-Embedding C++: Hidden Activities?

What is an embedded system? The general definition is a computer system dedicated to a specific purpose, i.e. not a general purpose system usable for different tasks. That is a very broad definition. I was just skimming the C++ coding guidelines for the Joint Strike Fighter. That’s a pretty big embedded system and the first DOD project that allowed C++! When you use an ATM to get money you’re using an embedded system. Those are basically hardened PCs. Then at the small end we have all the Internet of Things (IoT) gadgets.

The previous articles about embedding C++ discussing classes, virtual functions, and macros garnered many comments. I find both the positive and critical comments rewarding. More importantly, the critical comments point me toward issues or questions that need to be addressed, which is what got me onto the topic for this article. So thank you, all.

Let’s take a look at when embedded systems should or should not use C++, taking a hard look at the claim that there may be hidden activities ripe to upset your carefully planned code execution.

Continue reading “Code Craft-Embedding C++: Hidden Activities?”

Processing For Raspberry Pi

You know Processing? It is the programming language and IDE aimed at the electronic arts, new media art, and visual design communities. [Gottfried Haider] recently got Processing working on the Raspberry Pi and included a hardware input/output library to manipulate the Pi’s I/O pins.

If you want to experiment with Processing, you can download it right on your Pi with the following command:

curl https://processing.org/download/install-arm.sh | sudo sh

You can also download it from the download page. There’s a specific tutorial available or you can watch some general videos on Processing (see below).

Continue reading “Processing For Raspberry Pi”

Gravity Pong Reaches Into The Sky

For a recent event [Norwegian Creations] decided to make something fun. They built what might just be the tallest free-standing gravity pong game out there. It’s 4.5m tall, and the LEDs in it draw over 100 amps!

What is Gravity Pong anyway? Well it’s a single person game where you get three “bounces”. A ball of light will drop from the top of the tube and the closer to the bounce-line you hit the button, the higher it will bounce. Your high score consists of how high you get the light — but if you miss the bounce line, you lose!

The structure itself is quite impressive. They’ve wrapped acrylic tubes with 1792 individually controllable RGB LEDs, in groups of four. Each section requires a power supply capable of putting out 27A @ 5V! The game is controlled by a Raspberry Pi 2 which controls a Pixelpusher to manipulate the LEDs. It’s connected to the Internet, so high scores can be automatically uploaded!

When it comes to pong though, we quite enjoy playing it with $5,000 construction crane controllers — because why not?

Continue reading “Gravity Pong Reaches Into The Sky”

RPiTX Turns Rasberry Pi Into Versatile Radio Transmitter

Since the discovery that some USB TV tuner dongles could be used to monitor radio waves across a huge amount of spectrum, the software-defined radio world has exploded with interest. The one limiting factor, though, has been that the dongles can only receive signals; they can’t transmit them. [Evariste Okcestbon, F5OEO] (if that is his real name! Ok c’est bon = Ok this is good) has written some software that will get you transmitting using SDR with only a Raspberry Pi and a wire.

There have been projects in the past that use a Pi to broadcast radio (PiFM), but this new software (RPiTX) takes it a couple steps further. Using just an appropriately-sized wire connected to one of the GPIO pins, the Raspberry Pi is capable of broadcasting using FM, AM, SSB, SSTV, or FSQ signals. This greatly increases the potential of this simple computer-turned-transmitter and anyone should be able to get a lot of use out of it. In the video demo below the break, [Evariste] records a wireless doorbell signal and then re-transmits it using just the Rasbperry Pi.

The RPiTX code is available on GitHub if you want to try it out. And it should go without saying that you will most likely need an amateur radio license of some sort to use most of these features, depending on your locale. If you don’t have a ham radio license yet, you don’t need one to listen if you want to get started in the world of SDR. But a ham license isn’t hard to get and at this point it shouldn’t take much convincing for you to get transmitting.

Continue reading “RPiTX Turns Rasberry Pi Into Versatile Radio Transmitter”

Dalek-Berry-Pi Mower

There’s something about lawn mowers and hackers. A desire to make them into smart, independent robots. Probably in preparation for the day when Skynet becomes self-aware or the Borg collective comes along to assimilate them into the hive. [Ostafichuk] wanted his to be ready when that happens, so he’s building a Raspberry-Pi powered, Dalek costumed Lawn Mower that is still a work in progress since starting on it in 2014. According to him,  “commercial robot lawn mowers are too expensive and not nearly terrifying enough to be any fun, so I guess I will just have to build something myself…”

His first report describes the basic skeletal structure he built using scrap pieces of wood. Two large lawn tractor wheels and a third pivot wheel help with locomotion. The two large wheels are driven by geared motors originally meant for car seat height adjustments. A deep cycle 12V battery, and solar panels for charging would take care of power. A raspberry-pi provides the brain power for the Dalek-Mower and L298N based drivers help drive the motors. The body was built from some more planks of scrap wood that he had lying around. While waiting around for several parts to arrive – ultrasonic sensors, accelerometer, 5V power supply modules – he started to paint and decorate the wood work. Generous amounts of water repellent paint and duct tape were used to make it weather proof. His initial plan was to use python for the code, but he later switched to programming in c along with wiringPi library. Code for the project is available from his bitbucket git repository. Load testing revealed that the L298N drivers were not suitable for the high current drawn by the motors, so he changed over to relays to drive them.

Continue reading “Dalek-Berry-Pi Mower”

Tracking The Hamster Marathon

[Michelle Leonhart] has two Roborovski hamsters (which, despite the name, are organic animals and not mechanical). She discovered that they seem to run on the hamster wheel all the time. A little Wikipedia research turned up an interesting factoid: This particular breed of hamster is among the most active and runs the equivalent of four human marathons a night. Of course, we always believe everything we read on Wikipedia, but not [Michelle]. She set out to determine if this was an accurate statement.

She had already added a ball bearing to the critters’ wheel to silence it by cannibalizing an old VCR. What she needed was the equivalent of a hamster pedometer. A Raspberry Pi and a Hall effect sensor did the trick. At least for the raw measurement. But it still left the question: how much distance is a hamster marathon?

01_hamster_stride_measurement[Michelle] went all scientific method on the question. She determined that an average human female’s stride is 2.2 feet which works out to 2400 strides per mile. A marathon is 26.2 miles (based on the distance Pheidippides supposedly ran to inform Athens of victory after the battle of Marathon). This still left the question of the length of a hamster’s stride. Surprisingly, there was no definitive answer, and [Michelle] proposed letting them run through ink and then tracking their footsteps. Luckily, [Zed Shaw] heard about her plan on Twitter and suggested pointing a webcam up through the plastic bottom of the cage along with a scale. That did the trick and [Michelle] measured her hamster’s stride at about 0.166 feet (see right).

Now it was a simple matter of math to determine that a hamster marathon is just under 10,500 steps. Logging the data to SQLite via ThingSpeak for a month led [Michelle] to the conclusion: her hamsters didn’t run 4 marathon’s worth of steps in a night. In fact, they never really got much over 2 marathons.

Does [Michelle] have lazy hamsters, or did she just add to our body of scientific knowledge about rodents? We don’t know. But we couldn’t help but admire her methods and her open source data logging code would probably be useful for some non-hamster activities.

If you are super competitive, you could use [Michelle’s] data to handicap yourself and challenge your pets to a race. But it would probably be cooler to build them their own Starship Trooper-style walkers. Either way, you can check out [Michelle’s] little marathon runners in the video below.

https://vine.co/v/enpFetTQD75