I spent the summer working on a variety of things. I documented some important things about the PC I built during the year, and wrote down the new projects I worked on over the summer.
Notes on Hydra (aka the big, black box under the desk):
This section will be a general overview of the multi-gpu build known as “Hydra”. A brief History of the Hydra build, it began as a project to make one computer run as two computers capable of 3D rendering using Virtual Machines (VMs). This means that the computer would be hooked up to two separate sets of peripherals (keyboard, mouse, monitor, etc.) and run as two distinct computers, which brought about the name “Hydra” after the multiple-headed, mythical creature. This was accomplished by splitting the resources (GPUs, CPU cores, RAM, and storage) of the computer using the operating system “Unraid”. This OS allowed for windows to be installed on two different VMs and then allocate the PC’s resources to each one. Eventually both VMs were running well independently and very quickly. So why is then is the computer no longer split into two systems? Well at the time of the build there was no support for the Oculus Rift that had just come out. Having received the Rift at the same time as the build was being completed, we wanted to test it out. An issue arose when we plugged in the multiple connectors of the Rift, the headset and other devices that were plugged in were not easily assigned to a VM. In fact after days and weeks of fiddling with settings and XML, the VMs sometimes would not turn on. The executive decision was made to wipe the drives and boot Windows 10 on as a single operating system.
This leads into the current Hydra build, which is a machine that is very fast and very capable of displaying 4K and powering VR Headsets. The Rift works well with the PC, even while it is simultaneously displaying what the Rift-user sees on an ultra-wide screen. The GPUs are set up in SLI configuration, which means that both are used together for graphics processing. This, in addition to all the CPU cores and RAM being utilized by one system, makes the PC so fast that a video that took four hours to render on the Energy Lab’s previous video editing machine, only took four minutes on Hydra.
This was one of the many experiments done on the PC over the summer. In addition to testing how fast the computer was, I made sure that the proper software was downloaded for the future users. Also I have some quick notes for those using the PC in the future.
· If the PC will not power on when the button is first pressed, check to make sure that the power button cables are connected at the bottom of the motherboard
· If the PC is not passing the POST, meaning it appears to turn on, then turns off, then turns on again and stays in this loop,
1. Turn the PC off both with the power button and the switch on the power supply on the back on the computer.
2. Re-seat the RAM by flicking open the switches at both ends of each stick of RAM, removing them, and then putting them back in place. (they should click when inserted properly)
3. Turn on and see if it is working. If so, GREAT!
4. If not, you may have to reseat the GPUS
5. Make sure system is completely off (Step 1)
6. Unplug the red cable by pressing latch on cable and gently removing the connector
7. Unscrew the thumb-screws holding them in on the left side.
8. Un-do the latches underneath the right middle of each GPU
9. Pull straight out
10. You may test the PC without to see if it is something else (wont turn on still).
11. If it does turn on without GPUs, turn it back off, carefully reverse the steps, by reinserting GPUs until they click and plugging the red cables in. Before reinserting the thumbscrews try turning the PC back on. If it boots up properly, re-screw in the thumbscrews and you're good to go.
· Make sure that the software stays updated!
· Every 3-4 months clean the insides of the computer with the air blower
· DON’T DOWNLOAD STUFF FROM SUSPICIOUS SITES (if you are unsure about a site ask first)
· Yes, the RAM is seated to one side. I know it could be in Quad channel, but there are restrictions in the length of the Water Cooler cables, so I had to seat the RAM on one side
· To make sure SLI is properly enabled follow these steps:
o Right click and Select “NVIDIA Control Panel”
Click the option that is highlighted below:
Overall Hydra is a capable machine ready for 3D rendering, video rendering, unity projects, and much more, so to the future users of this computer: Create amazing projects, Utilize the processing power at your fingertips, and don’t forget to have fun!
This summer I built what, for now, I am calling the “Pi-Box”. This box consists of a Raspberry Pi, a project box, a 7-inch touchscreen display, and a stand. I began by getting the raspberry pi entirely set u with operating system and software. Then I checked to make sure that the display was working by connecting it to the pi via ribbon cable. Next I made measurements of the pi and the mounting holes of the display. This led up to the point where I was able to cut a space for the pi in the project box. I went to mount it and it fit, so I drilled the holes, and slipped the display-pi combo into place. I screwed it in and sure enough the initial build was ready. This configuration is capable of being portable, as I discovered by connecting a portable charger to the micro-usb port. I decided to turn it into a stationary unit by attaching the stand to the back of it. If the facial recognition software Oliver worked on over the summer is installed on the unit, it might make a good, small footprint, automated attendance taker that I’d suggest testing in Independent Research classes.
Oracle R-Pi weather station:
I spent a few days working on the Oracle Raspberry-Pi weather station. Basically it is a kit of sensors for wind speed, direction and rainfall. A Raspberry Pi is included as well. I found that it doesn’t come with a lot of documentation. I got the wiring all set up, but the Pi itself still must be booted up and Id suggest that anyone working on it in the future look to find a way to mount it on a board that can be connected to the post outside that has other weather monitors.
Unity and other 3D Stuff:
Unity is software that is used to create interactive media in both 2 and 3 dimensions. I began with a tutorial for a 3D game. I began by creating the environment, which included a ball and a plane. Then I wrote scripts in C# to control the ball and camera.
I began looking into this software and how to use it, because it can be used to create content for VR. It is loaded onto Hydra, so if someone wants to, they can begin making content.
I also found a program called 3D Slash that can be used to create objects that can be 3D printed. I was working in this program to create a module that would contain the pi-cam for the Pi-Box. I did all the measurements and then used the tools to make sure the housing has the correct measurements.
3D slash is free, and has an editor online, but upon signing up you can download the app onto your computers (two per account). It is a quick way to create a 3D object and save the file as a .stl or .ply that can be printed.
I spent quite a bit of time also working on facial and voice recognition on the raspberry pi. I spent more time working on vocal recognition, but in both cases I made the observation that it takes a bit of time to process inputs, mostly because of the amount of RAM in the Pi. Thus for faster recognition times, preloading faces onto the RAM makes recognition faster. In addition, if you delete each profile that is matched as they are recognized, the faster each successive recognition cycle will be. I did not spend as much time on voice recognition, so I did not look into how to make it faster.