Delivering Graphics Apps with Amazon AppStream 2.0
Sahil Bahri, Sr. Product Manager, Amazon AppStream 2.0
Do you need to provide a workstation class experience for users who run graphics apps? With Amazon AppStream 2.0, you can stream graphics apps from AWS to a web browser running on any supported device. AppStream 2.0 offers a choice of GPU instance types. The range includes the newly launched Graphics Design instance, which allows you to offer a fast, fluid user experience at a fraction of the cost of using a graphics workstation, without upfront investments or long-term commitments.
In this post, I discuss the Graphics Design instance type in detail, and how you can use it to deliver a graphics application such as Siemens NX―a popular CAD/CAM application that we have been testing on AppStream 2.0 with engineers from Siemens PLM.
Graphics Instance Types on AppStream 2.0
First, a quick recap on the GPU instance types available with AppStream 2.0. In July, 2017, we launched graphics support for AppStream 2.0 with two new instance types that Jeff Barr discussed on the AWS Blog:
- Graphics Desktop
- Graphics Pro
Many customers in industries such as engineering, media, entertainment, and oil and gas are using these instances to deliver high-performance graphics applications to their users. These instance types are based on dedicated NVIDIA GPUs and can run the most demanding graphics applications, including those that rely on CUDA graphics API libraries.
Last week, we added a new lower-cost instance type: Graphics Design. This instance type is a great fit for engineers, 3D modelers, and designers who use graphics applications that rely on the hardware acceleration of DirectX, OpenGL, or OpenCL APIs, such as Siemens NX, Autodesk AutoCAD, or Adobe Photoshop. The Graphics Design instance is based on AMD’s FirePro S7150x2 Server GPUs and equipped with AMD Multiuser GPU technology. The instance type uses virtualized GPUs to achieve lower costs, and is available in four instance sizes to scale and match the requirements of your applications.
Instance | vCPUs | Instance RAM (GiB) | GPU Memory (GiB) |
stream.graphics-design.large | 2 | 7.5 GiB | 1 |
stream.graphics-design.xlarge | 4 | 15.3 GiB | 2 |
stream.graphics-design.2xlarge | 8 | 30.5 GiB | 4 |
stream.graphics-design.4xlarge | 16 | 61 GiB | 8 |
The following table compares all three graphics instance types on AppStream 2.0, along with example applications you could use with each.
Graphics Design | Graphics Desktop | Graphics Pro | |
Number of instance sizes | 4 | 1 | 3 |
GPU memory range |
1–8 GiB | 4 GiB | 8–32 GiB |
vCPU range | 2–16 | 8 | 16–32 |
Memory range | 7.5–61 GiB | 15 GiB | 122–488 GiB |
Graphics libraries supported | AMD FirePro S7150x2 | NVIDIA GRID K520 | NVIDIA Tesla M60 |
Price range (N. Virginia AWS Region) | $0.25 – $2.00/hour | $0.5/hour | $2.05 – $8.20/hour |
Example applications | Adobe Premiere Pro, AutoDesk Revit, Siemens NX | AVEVA E3D, SOLIDWORKS | AutoDesk Maya, Landmark DecisionSpace, Schlumberger Petrel |
Example graphics instance set up with Siemens NX
In the section, I walk through setting up Siemens NX with Graphics Design instances on AppStream 2.0. After set up is complete, users can able to access NX from within their browser and also access their design files from a file share. You can also use these steps to set up and test your own graphics applications on AppStream 2.0. Here’s the workflow:
- Create a file share to load and save design files.
- Create an AppStream 2.0 image with Siemens NX installed.
- Create an AppStream 2.0 fleet and stack.
- Invite users to access Siemens NX through a browser.
- Validate the setup.
Step 1: Create a file share to load and save design files
To launch and configure the file server
- Open the EC2 console and choose Launch Instance.
- Scroll to the Microsoft Windows Server 2016 Base Image and choose Select.
- Choose an instance type and size for your file server (I chose the general purpose m4.large instance). Choose Next: Configure Instance Details.
- Select a VPC and subnet. You launch AppStream 2.0 resources in the same VPC. Choose Next: Add Storage.
- If necessary, adjust the size of your EBS volume. Choose Review and Launch, Launch.
- On the Instances page, give your file server a name, such as My File Server.
- Ensure that the security group associated with the file server instance allows for incoming traffic from the security group that you select for your AppStream 2.0 fleets or image builders. You can use the default security group and select the same group while creating the image builder and fleet in later steps.
Log in to the file server using a remote access client such as Microsoft Remote Desktop. For more information about connecting to an EC2 Windows instance, see Connect to Your Windows Instance.
To enable file sharing
- Create a new folder (such as C:\My Graphics Files) and upload the shared files to make available to your users.
- From the Windows control panel, enable network discovery.
- Choose Server Manager, File and Storage Services, Volumes.
- Scroll to Shares and choose Start the Add Roles and Features Wizard. Go through the wizard to install the File Server and Share role.
- From the left navigation menu, choose Shares.
- Choose Start the New Share Wizard to set up your folder as a file share.
- Open the context (right-click) menu on the share and choose Properties, Permissions, Customize Permissions.
- Choose Permissions, Add. Add Read and Execute permissions for everyone on the network.
Step 2: Create an AppStream 2.0 image with Siemens NX installed
To connect to the image builder and install applications
- Open the AppStream 2.0 management console and choose Images, Image Builder, Launch Image Builder.
- Create a graphics design image builder in the same VPC as your file server.
- From the Image builder tab, select your image builder and choose Connect. This opens a new browser tab and display a desktop to log in to.
- Log in to your image builder as ImageBuilderAdmin.
- Launch the Image Assistant.
- Download and install Siemens NX and other applications on the image builder. I added Blender and Firefox, but you could replace these with your own applications.
- To verify the user experience, you can test the application performance on the instance.
Before you finish creating the image, you must mount the file share by enabling a few Microsoft Windows services.
To mount the file share
- Open services.msc and check the following services:
- DNS Client
- Function Discovery Resource Publication
- SSDP Discovery
- UPnP Device H
- If any of the preceding services have Startup Type set to Manual, open the context (right-click) menu on the service and choose Start. Otherwise, open the context (right-click) menu on the service and choose Properties. For Startup Type, choose Manual, Apply. To start the service, choose Start.
- From the Windows control panel, enable network discovery.
- Create a batch script that mounts a file share from the storage server set up earlier. The file share is mounted automatically when a user connects to the AppStream 2.0 environment.
Logon Script Location: C:\Users\Public\logon.bat
Script Contents:
:loop
net use H: \\path\to\network\share
PING localhost -n 30 >NUL
IF NOT EXIST H:\ GOTO loop
- Open gpedit.msc and choose User Configuration, Windows Settings, Scripts. Set logon.bat as the user logon script.
- Next, create a batch script that makes the mounted drive visible to the user.
Logon Script Location: C:\Users\Public\startup.bat
Script Contents:
REG DELETE “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer” /v “NoDrives” /f
- Open Task Scheduler and choose Create Task.
- Choose General, provide a task name, and then choose Change User or Group.
- For Enter the object name to select, enter SYSTEM and choose Check Names, OK.
- Choose Triggers, New. For Begin the task, choose At startup. Under Advanced Settings, change Delay task for to 5 minutes. Choose OK.
- Choose Actions, New. Under Settings, for Program/script, enter C:\Users\Public\startup.bat. Choose OK.
- Choose Conditions. Under Power, clear the Start the task only if the computer is on AC power Choose OK.
- To view your scheduled task, choose Task Scheduler Library. Close Task Scheduler when you are done.
Step 3: Create an AppStream 2.0 fleet and stack
To create a fleet and stack
- In the AppStream 2.0 management console, choose Fleets, Create Fleet.
- Give the fleet a name, such as Graphics-Demo-Fleet, that uses the newly created image and the same VPC as your file server.
- Choose Stacks, Create Stack. Give the stack a name, such as Graphics-Demo-Stack.
- After the stack is created, select it and choose Actions, Associate Fleet. Associate the stack with the fleet you created in step 1.
Step 4: Invite users to access Siemens NX through a browser
To invite users
- Choose User Pools, Create User to create users.
- Enter a name and email address for each user.
- Select the users just created, and choose Actions, Assign Stack to provide access to the stack created in step 2. You can also provide access using SAML 2.0 and connect to your Active Directory if necessary. For more information, see the Enabling Identity Federation with AD FS 3.0 and Amazon AppStream 2.0 post.
Your user receives an email invitation to set up an account and use a web portal to access the applications that you have included in your stack.
Step 5: Validate the setup
Time for a test drive with Siemens NX on AppStream 2.0!
- Open the link for the AppStream 2.0 web portal shared through the email invitation. The web portal opens in your default browser. You must sign in with the temporary password and set a new password. After that, you get taken to your app catalog.
- Launch Siemens NX and interact with it using the demo files available in the shared storage folder – My Graphics Files.
After I launched NX, I captured the screenshot below. The Siemens PLM team also recorded a video with NX running on AppStream 2.0.
Summary
In this post, I discussed the GPU instances available for delivering rich graphics applications to users in a web browser. While I demonstrated a simple setup, you can scale this out to launch a production environment with users signing in using Active Directory credentials, accessing persistent storage with Amazon S3, and using other commonly requested features reviewed in the Amazon AppStream 2.0 Launch Recap – Domain Join, Simple Network Setup, and Lots More post.
To learn more about AppStream 2.0 and capabilities added this year, see Amazon AppStream 2.0 Resources.
相關推薦
Delivering Graphics Apps with Amazon AppStream 2.0
Sahil Bahri, Sr. Product Manager, Amazon AppStream 2.0 Do you need to provide a workstation class experience for users who run gr
How to securely deliver desktop applications to a browser with Amazon AppStream 2.0
In this project, you’ll learn how to configure, manage, and stream desktop applications to your users with Amazon AppStream 2.0. AppStre
New – GPU-Powered Streaming Instances for Amazon AppStream 2.0
We launched Amazon AppStream 2.0 at re:Invent 2016. This application streaming service allows you to deliver Windows applications to a desktop bro
Amazon AppStream 2.0 features
Graphics Design instances are ideal for delivering applications such as Adobe Premiere Pro, Autodesk Revit, and Siemens NX that rely on hardware
FAQ Amazon AppStream 2.0
Q : Comment puis-je créer des images avec mes propres applications ? Vous pouvez utiliser le générateur d'image Amazon AppStream 2.0 pou
Amazon AppStream 2.0 getting started
How pricing works: With AppStream 2.0, you pay only for the streaming resources (fleets and image builders) that you use and a small monthl
Amazon AppStream 2.0 pricing
On-Demand fleet instances are charged hourly. The instance charge includes compute, storage, and bandwidth that is consumed by the streaming pro
新增 – GPU 支援的 Amazon AppStream 2.0 流式處理例項
我們在 re:Invent 2016 釋出了 Amazon AppStream 2.0。利用此應用程式流式處理服務可將 Windows 應用程式交付到桌面瀏覽器。 AppStream 2.0 是完全託管的,並通過執行一般用途的應用程式提供一致的可擴充套件效能,提供經過優化的計
Вопросы и ответы по Amazon AppStream 2.0
Вопрос: Как можно создавать образы с собственными приложениями? Для создания образов с собственными приложениями можно использовать инст
Amazon AppStream 2.0 Partners
REAN Cloud is a global Systems Integrator (SI), Managed Service Provider (MSP) and Premier Consulting Partner in the AWS Partner Network
Amazon AppStream 2.0 常見問題
問:如何用我自己的應用程式建立映像? 藉助 Amazon AppStream 2.0 映像生成器,您可以使用自己的應用程式來建立映像。如需瞭解更多資訊,請訪問此頁面上的教程。 問:我的應用程式需要與哪個作業系統相容? 可執行在 Wind
Amazon AppStream 2.0 定價
如果您將映像生成器用於通用型例項 (stream.standard.medium),請使用一個通用型例項 (stream.standard.medium) 預置兩個按需佇列例項,然後新增兩個使用者: 在美國東部(弗吉尼亞北部)區域,stream.standard.medium
[Xamarin] - Xamarin.Forms Project with .Net Standard 2.0
.net core project install .sql col initial init cor deploy 1. Install .NET Core 2.0 SDK 。https://www.microsoft.com/net/download/core 2. I
AppStream 2.0 resources
Easily get started streaming your desktop applications to your users. In this guide, you'll install and configure two applications on AppStream
babel & browserify 報錯 'import' and 'export' may appear only with 'sourceType: module' (2:0)
使用babel & browserify, 當在A檔案: export default function method() { ... }; 在B檔案: import utils from './A'; 將報錯:'import' and 'export' may
Securing ASP.NET Core 2.0 Applications with JWTs
DG pin receive pict 技術 easily using block owin A Quick Introduction to JWTs JSON Web Tokens, often shortened with JWTs, are gathering mo
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\cl.exe' failed with exit status 2
安裝mysql是出現這個錯誤。 python3.和python2.兩個的版本不一樣,所以安裝的東西也不一樣:MySQLdb 安裝mysql的連線包。工具安裝 Python3.x版本:Pip install mysqlclient 但是Python2.x 版本:pip install mysql-python
XAMPP with PHP 7.3.0, 7.2.13, 7.1.25, 7.0.33 & 5.6.39 釋出
XAMPP 更新啦!官方為所有平臺釋出了支援最新 PHP 系列的 XAMPP 新版本,其中包括 PHP 7.3.0, 7.2.13, 7.1.25, 7.0.33 & 5.6.39。 新版本的 PHP(7.3.0) 提供了許多改進和新功能,如 Flexible H
Ship 2.0 is here, with powerful new tools for makers ⛵
Ship 2.0 is here, with powerful new tools for makers ⛵TL;DR: Ship 2.0 is here, with powerful new tools for makers.We originally launched Ship to help maker
Master yarn-cluster is deprecated since 2.0. Please use master "yarn" with specified deploy mode
使用下面命令, bin/spark-submit --class SimpleApp --master yarn-cluster /home/zzhan/workspace/jobs/sparkdem