AU Class
AU Class
class - AU

3D Design Reviews On-Demand with VRED and AWS

Share this class
Search for keywords in videos, presentation slides and handouts:

Description

This session will share details of a project called the VRED Session Management Service (VRED SMS). A prototype built by solutions engineers working together from Autodesk and Amazon Web Services (AWS), VRED SMS demonstrates how VRED 3D visualization software from Autodesk can be deployed and scaled on AWS in an on-demand way. VRED SMS allows applications that can interface a REST API to request a VRED collaboration session. Automated workflows execute to prepare the requisite instances and VRED configuration for a requested VRED scene file. This solution comprises a variety of AWS services, including but not limited to EC2 Image Builder, AWS Step Functions, AWS Systems Manager, AWS Secrets Manager, AWS Lambda, Amazon S3, Amazon DynamoDB, and Amazon API Gateway. It is also deployed using AWS Cloud Development Kit (AWS CDK). To automate the configuration of Autodesk's VRED software, this solution uses its Python and web APIs. The programmatic and workflow-driven nature of the solution makes it relatively simple to customize.

Key Learnings

  • See a practical example of automating VRED deployments using AWS services.
  • See a practical example of automating VRED configuration using the Python and web APIs.
  • Learn how to optimize deployments on AWS from cost to resource use.

Speaker

  • Andy Mui
    Andy Mui has been at AWS for a bit over 9 years and is currently a Solutions Engineer on the Open Source and Emerging Technology team, based in Portland, Oregon. He focuses on building high impact POCs to help customers see and experience the art of the possible with AWS services and emerging technology. Outside of work, he loves to explore the outdoors with his wife, kids, and doggo; perfect classic recipes; and develop/play games for fun and learning.
Video Player is loading.
Current Time 0:00
Duration 24:23
Loaded: 0.68%
Stream Type LIVE
Remaining Time 24:23
 
1x
  • Chapters
  • descriptions off, selected
  • en (Main), selected
Transcript

ANDY MUI: Hello. Thank you for joining 3D Design Reviews on Demand with VRED and AWS. My name is Andy Moi, and that's my coding companion, Panda, in the picture. I'm a solutions engineer on a neat little team called Open Source and Emerging Technology at AWS.

One of the things I love to do, is to build proof of concepts and prototypes to help bring new ideas and solutions to our customers, partners, and even internally to our service teams. I'm also passionate about developer and user experience and creating unique learning experiences.

I moved up to Portland in 2019, so there's a lot to explore outside of work with my wife, kids, and doggo. And when the rain picks up, there's always games. My 10-year anniversary at AWS is coming up in November, so it's truly an honor to present this session at Autodesk University to mark that milestone.

This session dives into the technical details of a prototype I built last year with my teammate, Eric Cornwell. I'll start with some background to explain how this project came to life. I'll then talk about how we scoped and designed the prototype to ensure we met the agreed upon goals and requirements within a six to eight week build window.

This time window forces us to be intentional about the more important features, and helps us avoid scope creep. Next, I'll deconstruct a solution, diving into implementation details. And finally, I'll conclude with what's next for the project.

As for learning objectives, throughout the presentation, you'll learn how to leverage AWS services to automate workflows and infrastructure configuration with the goal of optimizing deployments, being mindful of cost and resource utilization.

So, a little bit about the project and background. In early 2023, the AWS Partner team aligned to Autodesk and released an AWS Quick Start to help customers launch VRED in their AWS accounts. Around the same time, Autodesk Consulting demoed to us, a POC showing how VRED configuration could be automated with VRED's rich APIs.

While the AWS Quick Start helped customers get started, my team was engaged to build upon the work of these two teams, and to reimagine how VRED deployments could be scaled on AWS. So you may be thinking, if an AWS Quick Start solution exists, how was this project different?

So, the Quick Start is a really effective way to spin up a VRED environment, but the launch experience is highly self-service, may require IT expertise, and takes time to spin up. This prompted us to focus on the end user. How could we simplify the user experience and remove operational overhead?

And by end user, I mean participants that would use VRED for design reviews. So when we are thinking about the solution, we figured it should be as simple as scheduling a meeting where our back end would then manage the lifecycle of deployed resources.

Firstly, this means launching resources in a reasonable amount of time. We aimed to reduce the time to an active collaboration session as much as possible, while still being mindful of cost. To that end, we needed a mechanism to tear down the collaboration session and resources when the design review was done.

One of the main benefits of AWS resource elasticity, we wanted to be able to scale resources, especially costly GPU resources, down to zero when no collaboration sessions were happening. And finally, we thought about the entry point for a collaboration session. In other words, how could it integrate with other systems? Would it be ideal to be able to launch a collaboration session from another application, such as an asset management system or a creative project management system?

Let's dig into the details. So we came up with a solution comprised of two parts. A Golden AMI pipeline, and a VRED session management service, that would utilize those baked AMIs. AMIs, which is short for Amazon Machine Image, contains software and drivers needed to boot EC2 instances with the bundled applications in a repeatable manner. The Golden AMI pipeline is an open source solution that we adapted to build VRED AMIs.

The other part of the solution is the VRED session management service, which applies workflow orchestration to manage the life cycle of VRED instances, to serve design review collaboration sessions. It's fronted by an API to enable customers to integrate the service with existing systems, and more tightly integrate into their engineering workflows.

So let's first dig into the Golden AMI pipeline, since its outputs serve as inputs to the VRED service project. This solution, the Golden AMI pipeline, leans heavily on EC2 Image Builder, which is an AWS service that lets you define pipelines that are comprised of an image recipe, build infrastructure definition, and distribution settings.

The image recipe starts with a vanilla base image and executes components to carry out specific steps to customize the AMI. Our pipelines start with a base windows 2022 operating system. It performs OS level settings optimized for VRED, loads VRED core install media, along with helper scripts stored in S3, and performs the VRED installation.

Finally, it checks the VRED installation as a part of a test component to make sure everything was created as expected. The infrastructure definition in the pipeline simply defines what resources are needed for the instance that actually does the building of the AMI. And finally, the distribution settings lets you define a launch configuration and specify which accounts and regions should receive the image output.

The screenshot shows an example of a pipeline configuration file. The Golden AMI project looks for these JSON configuration files to know what pipelines to create an EC2 image builder. Each AMI version will have its own pipeline. This allows us to create AMIs for different operating systems, and versions of VRED.

Notice the build and test component configuration files that are referenced in the pipeline configuration. We'll talk about that next, and what those are used for. So here's a look into what a build component configuration looks like. It's very readable, so you can get the gist of what's happening.

Think of this as an automated runbook used to configure the OS and desired software. Baking VRED into the AMI lets us cut down VRED launch times from around 30 minutes, which is what we saw with the AWS Partner Quick Start, to about 10 to 12 minutes.

10 to 12 minutes was definitely a more reasonable amount of time for an end user to wait for a VRED collaboration session to be created, especially if they're creating this on demand. We could have considered persistent resources to further shorten that time to an active collaboration session, but remember, we wanted to spin down resources when they're not in use to save on cost.

Once we have these pipeline in component configuration files defined, we can deploy the Golden pipeline using AWS Cloud Development Kit or AWS CDK, for short. We'll touch on deployments and CDK later in the presentation. But for now, notice the CDK deployment creates the desired EC2 image builder pipelines.

For our project, we started with Autodesk VRED version 15.31, and added support for 16.0 when it was released. We also aspire to build in support for the new VRED 25 released earlier this year. With the pipelines deployed, the final step is to run them for each of the VRED versions to output the desired VRED AMIs. This way, we can use them in the VRED session management service.

This can be done using the console, as shown here, where we select the pipeline name and choose the run pipeline from the action context menu. Or, you could programmatically do this using AWS SDKs or using the AWS CLI.

The pipeline will take some time to run, but once complete, outputs an EC2 AMI that can be used to launch instances of VRED core. Notice, there's a versioning system to allow for further customization of the images to be used in different contexts. The outputted AMIs are passed as inputs to the second part of the overall solution, the VRED session management service.

Now that we have the AMIs to use, let's talk about how we designed the VRED session management service to deploy and manage VRED collaboration sessions. There's a lot on this slide, so let's start with the API.

We're using Amazon API gateway to deploy a scalable REST API endpoint. API resources and methods map to a combination of AWS Lambda functions and an AWS step functions execution. AWS Lambda functions are a simple way to execute code in the cloud.

You can see, it's used in a number of ways. One, we use it to retrieve session information from our backend database. We chose Amazon DynamoDB for its scalability and flexible data model, being a NoSQL solution. We use it to store information about each VRED session, as well as information about the VRED nodes that service a session.

Another Lambda function is also used to tear down VRED collaboration sessions. Notice the Lambda function delete method interacts with the VRED core instances directly. It uses the VRED's web API to perform application level configurations, in this case, tearing down a collaboration session and most importantly, terminating the VRED process on the VRED instances.

This is an essential step to ensure the license gets released from the license server. Once VRED is terminated, the EC2 instance is terminated, as well, and a collaboration session is marked as ended in the database. This last piece isn't illustrated in the diagram, to improve readability, but it is no data in our project documentation.

So, let's switch gears to the POST method, which creates a VRED session. This path leans on an integration between API Gateway and AWS Step Functions. AWS Step Functions is a serverless workflow orchestration service--

--and it's easily one of my favorite services for a number of reasons. It has great support for integrations with other AWS services, has an excellent developer experience, and supports a wide variety of workflow use cases.

The next slide, we'll dive deeper into the orchestration details, but for now, just know that an incoming POST request through the API for a VRED session executes an instance of a step function state machine to run a workflow that configures the requisite nodes. It also loads the request to VRED scene file and joins them to a collaboration session.

Once the creation workflow completes, an Amazon SNS notification sends an email to a subscribed email address when the session VRED is launched. More on that later. So now, let's dig into the orchestration details, to understand how we're preparing the collaboration session and the nodes to support it.

This diagram is a different view of the same architecture from the previous slide, only it draws attention to the provisioning workflow. That state diagram you see in the middle of the slide lists all the actions that happen when creating a VRED session.

First, the workflow validates the existence of the requested scene file. There's no point provisioning nodes, if the scene file cannot be loaded or does not exist in S3. Next, it generates a UUID using an intrinsic function available in the Amazon States Language or ASL, for short.

ASL resembles JSON, and is essentially, how you define your state machine. You can also define how data flows through your state machine as it enters and exits each state. You can also define what AWS service actions to carry out each step of the way. This UUID represents a VRED session ID, and is written to the DynamoDB database.

The next state in the workflow is where we prepare the notes. Notice how the diagram shows a stack of node prep operations. This state uses a step functions state called, a map state. This allows for parallel processing of data contained in an array within the execution input.

An example of an execution input is shown in the upper right-hand corner of the slide. Notice the participants key. The array value assigned to that key is what the map state iterates over. This execution input is relayed from the client through the REST API, and is submitted as input to the state machine execution.

Other data in the execution input includes the location of the scene file in S3, whether to set up a password for the collaboration session, specifies the instance type to use, and what VRED version to launch. In our implementation, we provision a VRED instance for each participant in the collaboration session.

Back to the node prep state. Here, we're calling another AWS service, called AWS Systems Manager, SSM, for short. We use a few different capabilities of SSM in this solution. The two main features, especially in this provisioning workflow, are SSM automation runbooks and run command.

The automation runbook executes a node level workflow that uses run command to execute the Python-based helper scripts loaded onto the AMI when we built the AMIs in the Golden AMI pipeline. These scripts retrieve the scene file from S3, configures licensing, starts the VRED core process, loads the scene, and confirms the web API is available before marking the node as ready.

The Python helper scripts use VRED's Python API to perform base VRED setup. The reason why we check for the web API availability, is because the next step in the state machine sets up the collaboration session.

The reason why we didn't do this during node prep, is because all instances needed to be ready in order to join them to a collaboration session. We're using run command for node setup, which leverages the VRED Python API. And we're using Lambda to interact with the VRED web API for application-specific configurations, like joining a collaboration session.

The collaboration session is marked as active, and the database is the final step, and a notification is sent to the subscribed email address. The email notification contains IP addresses for the VRED nodes, and could be individually sent to each participant in the collaboration session.

But for our cases of prototyping, we just sent this to the subscribed email address and then divvied up public IP addresses for users to test the collaboration session. Here, you can see a side by side view of two users in the same collaboration session. And you can notice the floating avatars in the background and collaboration session information on that contextual menu.

This slide shows our simple API definition and backend database structure. The API table speaks for itself, but I want to touch on the database for a second. DynamoDB offers flexibility when defining how to store and query data. The reason we're using generic partition and store keys, is to optimize the queries.

The partition key, combined with sort key conditions, allows for optimized retrieval of data. For example, I can get all VRED node information by querying for the session UUID and using a sort key condition that starts with node. Or, I can just retrieve the session information with a sort key condition equal to info.

So now, let's talk about application configuration. These are parameters that are used by various aspects of the VRED session management service. We're using SSM Parameter Store to store these values that are looked up and used by the SSM automation workflow.

For example, the VRED AMI IDs are stored here, as well as the network license manager IP address. This enables the node prep stage to actually complete and be able to spin up the correct version of VRED, as well as license it appropriately.

Since the VRED session management service is a low ops model when it comes to working with the instances themselves, we rely on automation to handle spin up and tear down of those resources. However, if something goes wrong, a common EC2 key pair is stored as a secret value, also in SSM Parameter Store, to enable admins with break glass access to instances, if needed.

Let's revisit the CDK, which was mentioned earlier in the presentation. AWS CDK is how we deploy both the Golden AMI pipeline and VRED session management service projects. CDK is an extension of AWS CloudFormation, and provides a set of libraries for developers to express AWS resources using common programming languages such as Python, TypeScript, Java, and C#.

CDK comes with the CLI that synthesizes CDK code into an AWS CloudFormation template. The CLI also can be used to deploy CDK projects, which is equivalent to launching a stack using CloudFormation. A key benefit of using CDK, is the ability to record infrastructure in source control.

This is especially interesting if your organization is looking into a GitOps model for managing infrastructure. CDK maintains something called, context, which are values that are related to your AWS account. These values are written when CDK apps are synthesized, but it also makes it possible for administrators to provide context values, which are used during CDK deployment.

In the case of this project, we're using CDK context values to pass in information, such as the VRED AMI IDs and license server information, which are both resources that already exist in the target AWS account where we're deploying the VRED session management service.

When the VRED service CDK is deployed, these values are used for resource creation, but also stored in SSM Parameter Store for processes that need it to do their job.

And that concludes the solution walkthrough. I hope the information was helpful and informational and interesting to you. Next steps for this project, we plan to open source the solution either through our AWS solutions page or another AWS open source channel, such as AWS samples.

We'll be sure to release a blog to announce when the project will be available to customers. For now, here are some links for further reading about the solution and related services and capabilities used to piece this solution together. The handout and presentation download will also include these links for your reference. And with that, thank you so much for listening to this session.

Downloads

______
icon-svg-close-thick

Cookie preferences

Your privacy is important to us and so is an optimal experience. To help us customize information and build applications, we collect data about your use of this site.

May we collect and use your data?

Learn more about the Third Party Services we use and our Privacy Statement.

Strictly necessary – required for our site to work and to provide services to you

These cookies allow us to record your preferences or login information, respond to your requests or fulfill items in your shopping cart.

Improve your experience – allows us to show you what is relevant to you

These cookies enable us to provide enhanced functionality and personalization. They may be set by us or by third party providers whose services we use to deliver information and experiences tailored to you. If you do not allow these cookies, some or all of these services may not be available for you.

Customize your advertising – permits us to offer targeted advertising to you

These cookies collect data about you based on your activities and interests in order to show you relevant ads and to track effectiveness. By collecting this data, the ads you see will be more tailored to your interests. If you do not allow these cookies, you will experience less targeted advertising.

icon-svg-close-thick

THIRD PARTY SERVICES

Learn more about the Third-Party Services we use in each category, and how we use the data we collect from you online.

icon-svg-hide-thick

icon-svg-show-thick

Strictly necessary – required for our site to work and to provide services to you

Qualtrics
We use Qualtrics to let you give us feedback via surveys or online forms. You may be randomly selected to participate in a survey, or you can actively decide to give us feedback. We collect data to better understand what actions you took before filling out a survey. This helps us troubleshoot issues you may have experienced. Qualtrics Privacy Policy
Akamai mPulse
We use Akamai mPulse to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Akamai mPulse Privacy Policy
Digital River
We use Digital River to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Digital River Privacy Policy
Dynatrace
We use Dynatrace to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Dynatrace Privacy Policy
Khoros
We use Khoros to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Khoros Privacy Policy
Launch Darkly
We use Launch Darkly to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Launch Darkly Privacy Policy
New Relic
We use New Relic to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. New Relic Privacy Policy
Salesforce Live Agent
We use Salesforce Live Agent to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Salesforce Live Agent Privacy Policy
Wistia
We use Wistia to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Wistia Privacy Policy
Tealium
We use Tealium to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Tealium Privacy Policy
Upsellit
We use Upsellit to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Upsellit Privacy Policy
CJ Affiliates
We use CJ Affiliates to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. CJ Affiliates Privacy Policy
Commission Factory
We use Commission Factory to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Commission Factory Privacy Policy
Google Analytics (Strictly Necessary)
We use Google Analytics (Strictly Necessary) to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Google Analytics (Strictly Necessary) Privacy Policy
Typepad Stats
We use Typepad Stats to collect data about your behaviour on our sites. This may include pages you’ve visited. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our platform to provide the most relevant content. This allows us to enhance your overall user experience. Typepad Stats Privacy Policy
Geo Targetly
We use Geo Targetly to direct website visitors to the most appropriate web page and/or serve tailored content based on their location. Geo Targetly uses the IP address of a website visitor to determine the approximate location of the visitor’s device. This helps ensure that the visitor views content in their (most likely) local language.Geo Targetly Privacy Policy
SpeedCurve
We use SpeedCurve to monitor and measure the performance of your website experience by measuring web page load times as well as the responsiveness of subsequent elements such as images, scripts, and text.SpeedCurve Privacy Policy
Qualified
Qualified is the Autodesk Live Chat agent platform. This platform provides services to allow our customers to communicate in real-time with Autodesk support. We may collect unique ID for specific browser sessions during a chat. Qualified Privacy Policy

icon-svg-hide-thick

icon-svg-show-thick

Improve your experience – allows us to show you what is relevant to you

Google Optimize
We use Google Optimize to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Google Optimize Privacy Policy
ClickTale
We use ClickTale to better understand where you may encounter difficulties with our sites. We use session recording to help us see how you interact with our sites, including any elements on our pages. Your Personally Identifiable Information is masked and is not collected. ClickTale Privacy Policy
OneSignal
We use OneSignal to deploy digital advertising on sites supported by OneSignal. Ads are based on both OneSignal data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that OneSignal has collected from you. We use the data that we provide to OneSignal to better customize your digital advertising experience and present you with more relevant ads. OneSignal Privacy Policy
Optimizely
We use Optimizely to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Optimizely Privacy Policy
Amplitude
We use Amplitude to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Amplitude Privacy Policy
Snowplow
We use Snowplow to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Snowplow Privacy Policy
UserVoice
We use UserVoice to collect data about your behaviour on our sites. This may include pages you’ve visited. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our platform to provide the most relevant content. This allows us to enhance your overall user experience. UserVoice Privacy Policy
Clearbit
Clearbit allows real-time data enrichment to provide a personalized and relevant experience to our customers. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID.Clearbit Privacy Policy
YouTube
YouTube is a video sharing platform which allows users to view and share embedded videos on our websites. YouTube provides viewership metrics on video performance. YouTube Privacy Policy

icon-svg-hide-thick

icon-svg-show-thick

Customize your advertising – permits us to offer targeted advertising to you

Adobe Analytics
We use Adobe Analytics to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, and your Autodesk ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Adobe Analytics Privacy Policy
Google Analytics (Web Analytics)
We use Google Analytics (Web Analytics) to collect data about your behavior on our sites. This may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. We use this data to measure our site performance and evaluate the ease of your online experience, so we can enhance our features. We also use advanced analytics methods to optimize your experience with email, customer support, and sales. Google Analytics (Web Analytics) Privacy Policy
AdWords
We use AdWords to deploy digital advertising on sites supported by AdWords. Ads are based on both AdWords data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that AdWords has collected from you. We use the data that we provide to AdWords to better customize your digital advertising experience and present you with more relevant ads. AdWords Privacy Policy
Marketo
We use Marketo to send you more timely and relevant email content. To do this, we collect data about your online behavior and your interaction with the emails we send. Data collected may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, email open rates, links clicked, and others. We may combine this data with data collected from other sources to offer you improved sales or customer service experiences, as well as more relevant content based on advanced analytics processing. Marketo Privacy Policy
Doubleclick
We use Doubleclick to deploy digital advertising on sites supported by Doubleclick. Ads are based on both Doubleclick data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Doubleclick has collected from you. We use the data that we provide to Doubleclick to better customize your digital advertising experience and present you with more relevant ads. Doubleclick Privacy Policy
HubSpot
We use HubSpot to send you more timely and relevant email content. To do this, we collect data about your online behavior and your interaction with the emails we send. Data collected may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, email open rates, links clicked, and others. HubSpot Privacy Policy
Twitter
We use Twitter to deploy digital advertising on sites supported by Twitter. Ads are based on both Twitter data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Twitter has collected from you. We use the data that we provide to Twitter to better customize your digital advertising experience and present you with more relevant ads. Twitter Privacy Policy
Facebook
We use Facebook to deploy digital advertising on sites supported by Facebook. Ads are based on both Facebook data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Facebook has collected from you. We use the data that we provide to Facebook to better customize your digital advertising experience and present you with more relevant ads. Facebook Privacy Policy
LinkedIn
We use LinkedIn to deploy digital advertising on sites supported by LinkedIn. Ads are based on both LinkedIn data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that LinkedIn has collected from you. We use the data that we provide to LinkedIn to better customize your digital advertising experience and present you with more relevant ads. LinkedIn Privacy Policy
Yahoo! Japan
We use Yahoo! Japan to deploy digital advertising on sites supported by Yahoo! Japan. Ads are based on both Yahoo! Japan data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Yahoo! Japan has collected from you. We use the data that we provide to Yahoo! Japan to better customize your digital advertising experience and present you with more relevant ads. Yahoo! Japan Privacy Policy
Naver
We use Naver to deploy digital advertising on sites supported by Naver. Ads are based on both Naver data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Naver has collected from you. We use the data that we provide to Naver to better customize your digital advertising experience and present you with more relevant ads. Naver Privacy Policy
Quantcast
We use Quantcast to deploy digital advertising on sites supported by Quantcast. Ads are based on both Quantcast data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Quantcast has collected from you. We use the data that we provide to Quantcast to better customize your digital advertising experience and present you with more relevant ads. Quantcast Privacy Policy
Call Tracking
We use Call Tracking to provide customized phone numbers for our campaigns. This gives you faster access to our agents and helps us more accurately evaluate our performance. We may collect data about your behavior on our sites based on the phone number provided. Call Tracking Privacy Policy
Wunderkind
We use Wunderkind to deploy digital advertising on sites supported by Wunderkind. Ads are based on both Wunderkind data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Wunderkind has collected from you. We use the data that we provide to Wunderkind to better customize your digital advertising experience and present you with more relevant ads. Wunderkind Privacy Policy
ADC Media
We use ADC Media to deploy digital advertising on sites supported by ADC Media. Ads are based on both ADC Media data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that ADC Media has collected from you. We use the data that we provide to ADC Media to better customize your digital advertising experience and present you with more relevant ads. ADC Media Privacy Policy
AgrantSEM
We use AgrantSEM to deploy digital advertising on sites supported by AgrantSEM. Ads are based on both AgrantSEM data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that AgrantSEM has collected from you. We use the data that we provide to AgrantSEM to better customize your digital advertising experience and present you with more relevant ads. AgrantSEM Privacy Policy
Bidtellect
We use Bidtellect to deploy digital advertising on sites supported by Bidtellect. Ads are based on both Bidtellect data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Bidtellect has collected from you. We use the data that we provide to Bidtellect to better customize your digital advertising experience and present you with more relevant ads. Bidtellect Privacy Policy
Bing
We use Bing to deploy digital advertising on sites supported by Bing. Ads are based on both Bing data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Bing has collected from you. We use the data that we provide to Bing to better customize your digital advertising experience and present you with more relevant ads. Bing Privacy Policy
G2Crowd
We use G2Crowd to deploy digital advertising on sites supported by G2Crowd. Ads are based on both G2Crowd data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that G2Crowd has collected from you. We use the data that we provide to G2Crowd to better customize your digital advertising experience and present you with more relevant ads. G2Crowd Privacy Policy
NMPI Display
We use NMPI Display to deploy digital advertising on sites supported by NMPI Display. Ads are based on both NMPI Display data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that NMPI Display has collected from you. We use the data that we provide to NMPI Display to better customize your digital advertising experience and present you with more relevant ads. NMPI Display Privacy Policy
VK
We use VK to deploy digital advertising on sites supported by VK. Ads are based on both VK data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that VK has collected from you. We use the data that we provide to VK to better customize your digital advertising experience and present you with more relevant ads. VK Privacy Policy
Adobe Target
We use Adobe Target to test new features on our sites and customize your experience of these features. To do this, we collect behavioral data while you’re on our sites. This data may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, your IP address or device ID, your Autodesk ID, and others. You may experience a different version of our sites based on feature testing, or view personalized content based on your visitor attributes. Adobe Target Privacy Policy
Google Analytics (Advertising)
We use Google Analytics (Advertising) to deploy digital advertising on sites supported by Google Analytics (Advertising). Ads are based on both Google Analytics (Advertising) data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Google Analytics (Advertising) has collected from you. We use the data that we provide to Google Analytics (Advertising) to better customize your digital advertising experience and present you with more relevant ads. Google Analytics (Advertising) Privacy Policy
Trendkite
We use Trendkite to deploy digital advertising on sites supported by Trendkite. Ads are based on both Trendkite data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Trendkite has collected from you. We use the data that we provide to Trendkite to better customize your digital advertising experience and present you with more relevant ads. Trendkite Privacy Policy
Hotjar
We use Hotjar to deploy digital advertising on sites supported by Hotjar. Ads are based on both Hotjar data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Hotjar has collected from you. We use the data that we provide to Hotjar to better customize your digital advertising experience and present you with more relevant ads. Hotjar Privacy Policy
6 Sense
We use 6 Sense to deploy digital advertising on sites supported by 6 Sense. Ads are based on both 6 Sense data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that 6 Sense has collected from you. We use the data that we provide to 6 Sense to better customize your digital advertising experience and present you with more relevant ads. 6 Sense Privacy Policy
Terminus
We use Terminus to deploy digital advertising on sites supported by Terminus. Ads are based on both Terminus data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that Terminus has collected from you. We use the data that we provide to Terminus to better customize your digital advertising experience and present you with more relevant ads. Terminus Privacy Policy
StackAdapt
We use StackAdapt to deploy digital advertising on sites supported by StackAdapt. Ads are based on both StackAdapt data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that StackAdapt has collected from you. We use the data that we provide to StackAdapt to better customize your digital advertising experience and present you with more relevant ads. StackAdapt Privacy Policy
The Trade Desk
We use The Trade Desk to deploy digital advertising on sites supported by The Trade Desk. Ads are based on both The Trade Desk data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that The Trade Desk has collected from you. We use the data that we provide to The Trade Desk to better customize your digital advertising experience and present you with more relevant ads. The Trade Desk Privacy Policy
RollWorks
We use RollWorks to deploy digital advertising on sites supported by RollWorks. Ads are based on both RollWorks data and behavioral data that we collect while you’re on our sites. The data we collect may include pages you’ve visited, trials you’ve initiated, videos you’ve played, purchases you’ve made, and your IP address or device ID. This information may be combined with data that RollWorks has collected from you. We use the data that we provide to RollWorks to better customize your digital advertising experience and present you with more relevant ads. RollWorks Privacy Policy

Are you sure you want a less customized experience?

We can access your data only if you select "yes" for the categories on the previous screen. This lets us tailor our marketing so that it's more relevant for you. You can change your settings at any time by visiting our privacy statement

Your experience. Your choice.

We care about your privacy. The data we collect helps us understand how you use our products, what information you might be interested in, and what we can improve to make your engagement with Autodesk more rewarding.

May we collect and use your data to tailor your experience?

Explore the benefits of a customized experience by managing your privacy settings for this site or visit our Privacy Statement to learn more about your options.