2019 NVIDIA vGPU Community Advisors

Today the 2019 NVIDIA vGPU Community Advisors (NGCA) was announced. I am pleased to share that I have been selected to join this wonderful group for another year. You can view the page and other NGCA members on the NVIDIA vGPU Community Advisors page.

NVIDIA vGPU Community Advisors #NGCA

For those who don’t know what the NGCA is let me share. In late 2015 early 2016 Rachel Berry (@rhbBSE) and a few other NVIDIA’s started a group called the NGCA. The ‘G’ in NGCA stood for GRID, which is what vGPU used to be when it was a physical GPU card. Remember the K1 and K2 cards?

The idea was to create a direct line of communication between advocates for virtualizing GPUs with and the NVIDIA virtualization team. Not the gaming people or the HPC people, the virtualization people. It’s been really interesting over the last three years to watch how this has sort of morphed into something a bit bigger.

In 2016, providing graphics capabilities to VMs was the big thing. Unlock the closet cases of desktops that couldn’t be virtualized. Now a days, it’s not just about VDI, vGPUs are capable of so much more, and you see a much more diverse group in the NGCA. There are those of us who are looking at how to virtualize systems like HPC and Deep Learning Systems to gain great advantages in the data center.

I am excited to return as a member of this prestigious group and am looking forward to a stellar 2019.

Permanent link to this article: https://www.wondernerd.net/2019-nvidia-vgpu-community-advisors/

OpenVPN on IOS 12.x fails to Connect to PiVPN

I use the PiVPN deployment of OpenVPN on a Raspberry Pi to connect back into my home network when I’m on the road. About a month ago my SD card gave out and I had to rebuild. I decided to go with PiVPN for my OpenVPN deployment. Setup was really easy and it worked great on my Android phone.

This last weekend I was at the in-laws and wanted to VPN in from my iPad to do some stuff at home. That’s where I ran into an issue, and if you are reading this I suspect you might have run into the same issue.

What I found was that I could connect to my VPN from my iPad with IOS 12.x but was unable to get any network traffic to or from my iPad when on the VPN. I couldn’t even ssh into my Pi. I couldn’t figure out what was wrong with it. Everything was working perfectly on my android phone.

I used my googlefu and tried to find answers to what could be going on and tried all sorts of different things. I finally figured out what was up and figured I’d share so I can fix this again later or help someone else!

The problem was that compression is turned on with PiVPN. And if you look at your settings in your OpenVPN client you will see that that is insecure.  (See picture below.) A further explanation of this can be found on the OpenVPN website under the security advisories if you are interested.

OpenVPN Client ScreenshotUnderstandably we want to turn off the allow compression option. So we tap “NO” on the screen.

Well if you’ve tried that you probably guessed its not that easy to fix. There is more to it than that.

First we have to modify the server config on the Raspberry Pi. To do this SSH into your Pi or open up a console window.

Now we are going to issue the following commands

su root
#You will be prompted for your root password at this point
cd /etc/openvpn
su vi server.conf
#You will be prompted for your root password at this point

You are now in the VI editor (you could also use your favorite editor).

Inside the config file you want to find the line that says:

compress lz4

You want to change that to be at the beginning of that line and press the ‘i’ button (for insert) then enter a ‘#‘ and a space (without quotes). It should look like this:

# compress lz4

Now press the esc key then type ‘:wq!‘ (without the quotes). This writes (w) and quits (q) forcefully (!).

What we just did was turn of the use of compression for your OpenVPN server. (Not sure why they haven’t shut it off yet in PiVPN.)

With that done you should be back at the prompt. We now need to reboot the Pi (the easiest way for many people, so the system can read the changes we made to the config file). To do this we will type the following:

exit
sudo shutdown -r now
#You will be prompted for your root password at this point your pi will reboot

While that’s happening we need to make a few more changes.

First we need to modify your profiles. (You will need to do this for any profile you’ve created.)

Open up the file in something like notepad++ and we want to find the line that says, “compress lz4” we then want to remove it or comment it out using the pound symbol (#).  So the top section of the file (before the <ca>) should look something like this:

client
dev tun
proto udp
remote [address] [port]
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
tls-version-min 1.2
verify-x509-name server_[***********] name
cipher AES-256-CBC
auth SHA256
# compress lz4
verb 3
<ca>

Save the file and transfer it to your IOS device. You will need to repeat this for any other devices you created profiles for. (Because we just to the server to stop doing compression.)

Now you can import the file into the OpenVPN app on your IOS device. Then go into the OpenVPN settings screen and make sure allow compression is set to NO.

Now go test it and see if it works!

Now to give credit where credit is due. I couldn’t have figured out how to do this without two posts I found.

First this thread on the OpenVPN forums pointed me in the right direction: https://forums.openvpn.net/viewtopic.php?f=36&t=27195&sid=728ec0b98d2563dc3cecf5b35188843d

And led me to this bug post on the OpenVPN community page: https://community.openvpn.net/openvpn/ticket/1126

I hope this quick post has helped you get your IOS device connecting to your OpenVPN instance.

Till next time, may the lights of your data center stay off and your server fans keep humming.

Permanent link to this article: https://www.wondernerd.net/openvpn-on-ios-12-x-fails-to-connect-to-pivpn/

vGPU PowerCLI Commands

I’m a noob when it comes to PowerCLI, I can Get-VM like most everyone else, but not much more.  You may have seen my previous post about Taking Back Resources where I talked about the theory and logic behind vGPU cycle harvesting. Right now I’m working on putting it into action and the best way I can think of is a PowerCLI script.

If you try googling much on GPU options for PowerCLI you’re not likely to find much. Either that or I am using the wrong terms. So before I drop some cool cycle harvesting options out there for folks I want to share two PowerCLI commands to look at GPU functions in your environment.

The first command I’d like to share is seeing what vGPU profile is being used by a VM.  This is a two part command. First you assign a VM to a variable, then you can explore the VMs backing. I figured it out from reading through code on the rgel/PowerCLi GitHub (https://github.com/rgel/PowerCLi/blob/master/Vi-Module/Vi-Module.psm1) My thanks to Roman and Hans for sharing this wonderful code.

PS C:\> $MyVMs = Get-VM "VMname"
PS C:\> $MyVMs.ExtensionData.Config.Hardware.Device.Backing.vgpu
grid_p4-4q

Yup, thats all there is to finding out what vGPU profile a VM is using.

Now for the next bit of goodness. Finding out what graphics cards are in a given host.

PS C:\> Get-VMHost | Get-VMHostPciDevice -DeviceClass DisplayController

VMHost.Name          Name                                                                   DeviceClass
-----------          ----                                                                   -----------
esxi02.wondernerd... NVIDIA Corporation NVIDIATesla P4                                      DisplayController
esxi02.wondernerd... Matrox Electronics Systems Ltd. MGA G200e [Pilot] ServerEngines (SEP1) DisplayController
esxi01.wondernerd... Matrox Electronics Systems Ltd. PowerEdge R610 MGA G200eW WPCM450      DisplayController

Taking it a step further lets isolate this to the P4 in my environment.  To do this we’ll modify the above just a bit…

PS C:\> Get-VMHost | Get-VMHostPciDevice -deviceClass DisplayController -Name "NVIDIA*"

VMHost.Name          Name                              DeviceClass
-----------          ----                              -----------
esxi02.wondernerd... NVIDIA Corporation NVIDIATesla P4 DisplayController

I found this by poking around the PowerCLI Cmdlet Reference and playing with the output.  (https://code.vmware.com/docs/7336/cmdlet-reference#/doc/Get-VMHostPciDevice.html)

PowerCLI Screen on vGPUs

Hope this helps as you develop your PowerCLI scripts dealing with vGPUs.

Permanent link to this article: https://www.wondernerd.net/vgpu-powercli-commands/

Permanent link to this article: https://www.wondernerd.net/taking-back-resources/

VMworld Session VAP2340BU – Driving Organizational Value by Virtualizing AI/ML/DL and HPC Workloads

Thank you to everyone who was able to attend our session at VMworld! And an even bigger thanks to those visiting who weren’t able to attend in person. Gina and I want to make sure you have the resources you need to understand how you can gain a competitive advantage by virtualizing your AI/ML/DL/ and HPC workloads. We wanted to share with you the resources for the session, these are items we found helpful in preparing our content or may help to further explain ideas presented in our session.

Recording of the session:

Session slides (sorry only available in PDF):

Cover slide for session VAP2340BULearn more about:

Permanent link to this article: https://www.wondernerd.net/vap2340bu/

VMworld 2018 Stickers… it’s not to late

This is going to be a short blog entry…  In case you hadn’t heard VMworld is coming up in Vegas. One of the things that happens a lot at VMworld among community members is sticker trading.  And the stickers find their way to the lid of a laptop. This post stems from a discussion on today’s VMware Community Round Table Podcast about stickers (and Eric having a non-stickered laptop lid).

If you want to join in and get your brand on people’s laptop lids it’s not to late to order stickers… it may cost more though. Here is my list of sticker providers I’ve used in the past.

  • StickerApp.com, I love this place lots of great options and really reasonable on the prices. If you want stickers by Monday of VMworld though you may be cutting it close. One of my original stickers WonderNerd.net with green lettering and a red outline. Diecut with a black edge.
  • NextDayFlyers.com, Shipping with this company is the cheapest I’ve found for a fast turn around time. They don’t have the diecut options like StickerApp and the preview system could use a lot of improvement. But they are going to get my stickers to me by Friday (I finalized my order yesterday, Tuesday).
    A pair of glasses with tape around the middle. Other super heros lose the glasses, the Wondernerd puts them on!
  • StickerMule.com, They are cheep and the stickers look good. What kills it is expediting the shipping.

Those are my top 3 picks for places to order from. You are probably thinking, “that’s great but I’m no graphic artist!” Don’t be, just play one on TV! There are a lot of royalty free and minimal cost sites for artwork, you just have to stitch it together to make it about you.

One of my favorite sites for graphics is TheNounProject.com. They have loads of graphics, many royalty free. Another one I like to use is OpenClipart.org the images here can very much more and are less icon like. The last one I like is WordClouds.com. They let you create images out of words (shocker I know). The site works great for those who want to create graphics with a different perspective.

Those are my tips for folks wanting to get stickers made before VMworld. You’ll pay extra for fast shipping and there are lots of graphics options to choose from, even for those who aren’t graphically inclined.

I look forward to seeing you at VMworld!

 

Permanent link to this article: https://www.wondernerd.net/vmworld-2018-stickers-its-not-to-late/

Finding New Opportunities

This is my third iteration of this blog. Originally I started drafting sort of a playful blog with a bunch of fluff. I have sense decided to use the advice of Roxette’s album “Don’t Bore Us, Get to the Chorus!” That said here we go…

On Wednesday, May 30th, I was given the opportunity to explore new directions as my current role, creating technical marketing content for VDI offerings, will no longer exist after June 15th. What does that mean? It means I won’t be delivering technical content around VDI at Dell EMC, I may continue at Dell EMC but I won’t be doing it VDI, for right now.

It also means that I’m exploring other opportunities both inside and outside of Dell EMC.  I think it would be wise to find an organization who could use my WonderNerd powers to create something awesome. Therefore I am looking for something new and exciting in the tech industry. (Please don’t assume I’m exclusively VDI.)

You may wonder if this means I’m vanishing from Dell EMC. I’m not intending to in the least. I’m extremely excited about an position on another team within Dell EMC, working on some very very very cool converged infrastructure stuff. (Did I mention it was very cool?) I’d be doing technical marketing and would get the opportunity to leverage the knowledge I gained when I was at VCE as well as the skills gained on other teams. As part of the role I’d get to do a lot of the things I really enjoy, like field enablement, architecture, design validations, and working with really cool technology. If I do land on this converged infrastructure team I guarantee you, I’ll be sharing more details about it as they become generally available.

Even though I’m very excited about this possible role and the opportunity to continue at Dell EMC, it’s not guaranteed yet. To that end, as Stephen Hawking said, “I have so much that I want to do. I hate wasting time.” So while I’m waiting for this new program I mentioned, I am not going to let time just slip away, allowing someone else to determine my destiny. I’m going to see what’s out there.

I have a lot I want to do, things I’ve never done, realities I’ve yet to create, places I’ve yet to explore, a future I have yet to write. If you or your organization are interested in being part of my next great adventure, and in seeing what limits we can exceed together, contact me now. Don’t wait, I’m looking for that next phenomenal opportunity, and as soon as I find it I’m going to do everything I can to take it to the next level.

Don’t let the red nose fool you, the WonderNerd has his cape on and is moving fast…Wondernerd In Cape, Glasses, and Red Nose at GTC17

Permanent link to this article: https://www.wondernerd.net/finding-new-opportunities/

NVIDIA CUDA Toolkit Test Script

At GTC18 I mentioned that I created a script to run through all the samples in the CUDA Toolkit. I had a few moments so I thought I’d share the code. You can use the code below to loop through the sample files.

If you are interested in the results I obtained on VMs with the various profiles they are as follows:

If you would like to use the code you’ll want to open up a text editor, like VI, on the system you wish to run this on then copy and paste this code into the file.  Save and close the file (esc : wq). Set permissions on the file to make it executable (chmod +x <filename>). Once you’ve done that you can execute the script in a terminal with a ./<filename> command and let it run.

I offer it as is. The code doesn’t filter out non executable files so you will get messages like the following. “~/NVIDIA_CUDA-9.0_Samples/bin/x86_64/linux/release/FlowCPU.flo: Permission denied”

#!/bin/bash

############################################################################
# Created by: Tony Foster
# Version 0.4
# Last modified April 5, 2018
# Description: Iterates through the sample files of the NVIDIA Toolkit and records the output.
# Usage: Free for public use, I wrote this to learn and hopefully it helps others to learn as well.
# Warranty: Offered as is where is with no warranty or statement of fitness expressed or implied. 
#           Use at your own risk.
############################################################################
# location of the samples directory, * is important
FILES=~/NVIDIA_CUDA-9.1_Samples/bin/x86_64/linux/release/*
# File name and location to save results to with month-day-year_hour-minute
SAVETO=~/Documents/testresults_`date +%m-%d-%y_%H-%M`.htm

# Change to the samples directory
cd ~/NVIDIA_CUDA-9.1_Samples/bin/x86_64/linux/release/

# Insure both paths are set so the samples can call the correct libraries 
PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64

# Create the HTML header files
echo "<html>" >> $SAVETO
echo "<head><title&amp;gt;P4-4Q NVIDIA CUDA Toolkit Results Page</title>" >> $SAVETO
echo "<body>" >> $SAVETO

# Start by capturing the results of the nvidia-smi command 
echo "<H1>Evaluation of NVIDIA CUDA Toolkit Example Files </H1> Card Status: <pre>" >> $SAVETO
nvidia-smi >> $SAVETO
echo "</pre>" >> $SAVETO

# Begin the running of the files and record the start time
echo "Start of run: "`date` >> $SAVETO

# For loop to loop through all the files ($FILES) in the current directory 
for f in $FILES
do 
    echo "<H2> file: $f </H2>" >> $SAVETO
    echo "<pre>" >> $SAVETO
    # Display on screen where we are in the set of files
    echo "$f" 
    # attempt to execute the file and record the results
    "$f" &>> $SAVETO
    # close formatting
    echo "</pre><br>" >> $SAVETO
    echo "<br>" >> $SAVETO
done

# Record the time the run ended 
echo "End of run:" `date` >> $SAVETO

# Capture a post nvidia-smi status
echo "Card Status: <pre>" >> $SAVETO
nvidia-smi >> $SAVETO

# Add footer information to the bottom of the report
echo "</pre>Tests run by Tony Foster - all rights reserved " `date` >> $SAVETO
echo "Published for informational purposes only." >> $SAVETO
echo "Return to <a href='https://wondernerd.net'>wondernerd.net</a>" >> $SAVETO
echo "</body></html>" >> $SAVETO

Let me know if the script is helpful or if you run into any errors using it.

Permanent link to this article: https://www.wondernerd.net/cuda-toolkit-test-script/

GTC18 Wrap Up

GTC 2018 concluded on Thursday afternoon and this post took me a bit longer than planned.  It’s time for my now annual GTC wrap up post. In this post I share my thoughts, opinions, and personal experience on this years conference.

GTC18 SwagThis is my 3rd year attending GTC and it’s amazing how much has changed in those 3 years. One thing that hasn’t changed is the venue, the San Jose Convention Center. I love the staff and crew here, all of them are very respectful and attentive to the venue. I wish the facilities staff was like this at every event I attend.

I do think that GTC is rapidly out growing the San Jose Convention Center (I’ve been told they will be returning here next year). As I look around the venue finding room to expand offerings and add new ones. For example below is a picture of a council lunch that happened Thursday during the conference. It was setup in a common area of the first floor of the convention center and separated by just a set of belts and pylons. In my opinion it makes it very difficult to have advisory type conversations when you are sitting out in the open instead of behind closed doors.

Advisors lunchMy personal opinion is that if GPU technology continues to grow as fast as it has been I don’t know that there is the capacity to hold all the attendees.

The bag and t-shirt are really good quality as usual (see picture at top of post).  The design is laid out well and everything seems sturdy. This includes little details like reinforced metal d-rings for shoulder straps and quality clips.

The material pickup to get the bags was still flawed this year, in my opinion. I talked about this in last years wrap up post. When you registered and picked up your conference badge you did not receive your backpack and t-shirt (unless you arrived after the Tuesday keynote). I understand the reasoning for this, to keep announcements under wrap till the keynote. However I am sure many attendees don’t return to pickup their bag just because they aren’t aware that they are available. There either needs to be better signage or a different alternative needs to be devised to distribute bags/materials.

The food was respectable again this year. I didn’t get to try food on all the days as I was working the Dell booth, still the food was better than all the other conferences I attend. Kudos to whoever is in charge of it!

One thing that still concerns me from last year is getting to the lunch venue (the south hall). To get to it you have to go down a steep flight of stairs then go outside into the South Hall. This appeared to be the only way to get there. These steps were impossible for some attendees, I’m sure. I really wish they would address this in a clear way so that everyone is able to easily partake in the dining experience.

The sessions were great this year, all of them that I was able to attend were high quality and the speakers did a fantastic job. They should all be proud of their presentations. I appreciate them sharing with the attendees and the thought provoking ideas they generated.

The one thing that was sort of annoying was the oil and gas (O&G) sessions I attended. They “requested” no one take pictures of the slides (the above is one I captured prior to the request). Having worked with O&G teams in the past I understand the reason behind this request and the need to keep sensitive data out of the public domain. At the same time, this is being presented to conference attendees to expand their knowledge and I didn’t sign an NDA before entering the session. I want to share this with my friends and expand the discussion to drive innovation. I’m also curious if these sessions will be published along with the slides. If they are then the request to not take pictures is sort of a moot point.  To that end I wish they would flag in the session description that this is a no photography session.

I will say that the session staff was again outstanding. I always like working with them. They are always so accommodating and make the presentation process so easy.

The presenters gift this year was pretty cool. It has really good sound and an on/off switch. Thank you and good job to the team that selected the item.

One thing that I’ve received at other conferences which would be neat to receive as a presenter, is a presenter pin. Then I can put in my bulletin board when I return from GTC. The VMworld presenter pins are my favorite ones thus far.

VMworld 2017 Speaker PinI do also like the ribbons added to the badge indicating various things such as alumni, speaker, etc. They are very helpful in conversations. I wish they had another ribbon (and maybe they do but I didn’t see it). I’d like to see a press/analyst ribbon. After my session I had an analyst come up to me and ask me about CUDAs future relevance, it would have helped in advance to know there was an analyst in my session.

I’m on the fence about something I talked about last year… That is moving the sessions around so that not all the VDI, O&G, medical, DL, HPC, etc. sessions aren’t always in the same room. It was really nice this year know that room 231 is where the VDI sessions are for the most part.

Unfortunately I didn’t get to attend the keynote as I was working in the booth getting ready for everyone to join us in the solutions exchange. Since I was working in the booth I do wish they would have the audio piped into the solution exchange or maybe even put it up on video boards for us in the exchange to hear/see what is being talked about. This would allow us to be able to have better conversations with attendees.

I liked the solutions exchange this year. The overall layout was pretty good and made it easy to navigate. It’s interesting to watch how this space changes every year. The interesting thing I noticed this year is that they did not carpet the isles, they were just bare concrete. It created an interesting contrast between the booths and the isles. The isolation of the VR Experience was ok however I know several people walked to the back of the VR Experience and found a way into the Exchange and that was a bit annoying. The VR Experience, in terms of what was shown was outstanding and I hope those in attendance had a chance to try it out.

My three favorite things that the GTC team does year after year and I commend them for, are the drink tickets, dinner with strangers, and the posters. Drink tickets (and the quantity [8] they hand out) are brilliant, I’ve been to other conferences where people have gotten way to intoxicated and started causing problems, this system really helps keep that to a minimum. The dinner with strangers is an awesome way to meet new people and share great ideas, I wish I could have attended one this year as I here they conversation were phenomenal. Which brings us to the posters (see an example below). I learn as much from the posters every year as I do the sessions typically. The individuals that put these posters together a do amazing things and I have encouraged other conferences to offer something similar, so far no takers.  If you get the chance to attend GTC I strongly recommend you try out each of these 3 things.

GTC18 Poster - P8231The demographics of GTC are changing. I remember 3 years ago it was t-shirts and ponytails. This year suits outnumbered ponytails, I even had a financial analyst come up to me after my session, and my session was technical in nature (I’ll see if I can get a blog created about the questions I was asked). Because of that I really think there will need to be more tracks geared towards  business decision makers and investors.

I’m glad they moved the party to the keynote hall this year. The tech museum was just to small to accommodate everyone. The party felt a bit disjointed to me. It was an Alice and Wonderland theme and to me it felt like they tried to hard. The food at the party was good. My favorite was the coconut desert chocolates.

Lastly I’m going to finish up with the area surrounding the venue. I love this area. There are a lot of choices for food in walking distance ranging in price and atmosphere. The hotels don’t get stupid expensive till about a month before GTC. The location is relatively safe, I feel comfortable walking by myself at night in the area and I see several police vehicles patrolling the area at all time of the day and night.

Overall it’s a great experience put on by a fantastic team. Hopefully they can address a few of the points I raise and continue to improve the GTC experience, like they do every year.

If you have feedback or an opinion about my post be sure to share in the comments below.

Permanent link to this article: https://www.wondernerd.net/gtc18-wrap-up/

GTC18, Session S8483 – Links

Thank you to everyone who attended session S8483, Empowering CUDA Developers with Virtual Desktops, at GTC. Below are the links provided in the session today. If you have questions or need additional resources please contact me or leave a message in the comment section below.

The items below that begin with a ‘/’ are shortened links called out in the session in blue more tiles that look like the one below. Both links will take you to the same same location.

A tile for more information

 

 

Permanent link to this article: https://www.wondernerd.net/gtc18-session-s8483-links/