Skip to content

Commit

Permalink
Amazon EC2 Elastic GPUs allow you to easily attach low-cost graphics …
Browse files Browse the repository at this point in the history
…acceleration to current generation EC2 instances. With Amazon EC2 Elastic GPUs, you can configure the right amount of graphics acceleration to your particular workload without being constrained by fixed hardware configurations and limited GPU selection.
  • Loading branch information
sstevenkang committed Jul 26, 2017
1 parent b5f3ac8 commit b85514e
Show file tree
Hide file tree
Showing 24 changed files with 1,748 additions and 0 deletions.
186 changes: 186 additions & 0 deletions generator/ServiceModels/ec2/ec2-2016-11-15.normal.json
Original file line number Diff line number Diff line change
Expand Up @@ -939,6 +939,16 @@
"output":{"shape":"DescribeEgressOnlyInternetGatewaysResult"},
"documentation":"<p>Describes one or more of your egress-only Internet gateways.</p>"
},
"DescribeElasticGpus":{
"name":"DescribeElasticGpus",
"http":{
"method":"POST",
"requestUri":"/"
},
"input":{"shape":"DescribeElasticGpusRequest"},
"output":{"shape":"DescribeElasticGpusResult"},
"documentation":"<p>Describes the Elastic GPUs associated with your instances. For more information about Elastic GPUs, see <a href=\"http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-gpus.html\">Amazon EC2 Elastic GPUs</a>.</p>"
},
"DescribeExportTasks":{
"name":"DescribeExportTasks",
"http":{
Expand Down Expand Up @@ -6154,6 +6164,53 @@
}
}
},
"DescribeElasticGpusRequest":{
"type":"structure",
"members":{
"ElasticGpuIds":{
"shape":"ElasticGpuIdSet",
"documentation":"<p>One or more Elastic GPU IDs.</p>",
"locationName":"ElasticGpuId"
},
"DryRun":{
"shape":"Boolean",
"documentation":"<p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>"
},
"Filters":{
"shape":"FilterList",
"documentation":"<p>One or more filters.</p> <ul> <li> <p> <code>availability-zone</code> - The Availability Zone in which the Elastic GPU resides.</p> </li> <li> <p> <code>elastic-gpu-health</code> - The status of the Elastic GPU (<code>OK</code> | <code>IMPAIRED</code>).</p> </li> <li> <p> <code>elastic-gpu-state</code> - The state of the Elastic GPU (<code>ATTACHED</code>).</p> </li> <li> <p> <code>elastic-gpu-type</code> - The type of Elastic GPU; for example, <code>eg1.medium</code>.</p> </li> <li> <p> <code>instance-id</code> - The ID of the instance to which the Elastic GPU is associated.</p> </li> </ul>",
"locationName":"Filter"
},
"MaxResults":{
"shape":"Integer",
"documentation":"<p>The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned <code>NextToken</code> value. This value can be between 5 and 1000.</p>"
},
"NextToken":{
"shape":"String",
"documentation":"<p>The token to request the next page of results.</p>"
}
}
},
"DescribeElasticGpusResult":{
"type":"structure",
"members":{
"ElasticGpuSet":{
"shape":"ElasticGpuSet",
"documentation":"<p>Information about the Elastic GPUs.</p>",
"locationName":"elasticGpuSet"
},
"MaxResults":{
"shape":"Integer",
"documentation":"<p>The total number of items to return. If the total number of items available is more than the value specified in max-items then a Next-Token will be provided in the output that you can use to resume pagination.</p>",
"locationName":"maxResults"
},
"NextToken":{
"shape":"String",
"documentation":"<p>The token to use to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.</p>",
"locationName":"nextToken"
}
}
},
"DescribeExportTasksRequest":{
"type":"structure",
"members":{
Expand Down Expand Up @@ -9156,6 +9213,126 @@
"locationName":"item"
}
},
"ElasticGpuAssociation":{
"type":"structure",
"members":{
"ElasticGpuId":{
"shape":"String",
"documentation":"<p>The ID of the Elastic GPU.</p>",
"locationName":"elasticGpuId"
},
"ElasticGpuAssociationId":{
"shape":"String",
"documentation":"<p>The ID of the association.</p>",
"locationName":"elasticGpuAssociationId"
},
"ElasticGpuAssociationState":{
"shape":"String",
"documentation":"<p>The state of the association between the instance and the Elastic GPU.</p>",
"locationName":"elasticGpuAssociationState"
},
"ElasticGpuAssociationTime":{
"shape":"String",
"documentation":"<p>The time the Elastic GPU was associated with the instance.</p>",
"locationName":"elasticGpuAssociationTime"
}
},
"documentation":"<p>Describes the association between an instance and an Elastic GPU.</p>"
},
"ElasticGpuAssociationList":{
"type":"list",
"member":{
"shape":"ElasticGpuAssociation",
"locationName":"item"
}
},
"ElasticGpuHealth":{
"type":"structure",
"members":{
"Status":{
"shape":"ElasticGpuStatus",
"documentation":"<p>The health status.</p>",
"locationName":"status"
}
},
"documentation":"<p>Describes the status of an Elastic GPU.</p>"
},
"ElasticGpuIdSet":{
"type":"list",
"member":{
"shape":"String",
"locationName":"item"
}
},
"ElasticGpuSet":{
"type":"list",
"member":{"shape":"ElasticGpus"}
},
"ElasticGpuSpecification":{
"type":"structure",
"required":["Type"],
"members":{
"Type":{
"shape":"String",
"documentation":"<p>The type of Elastic GPU.</p>"
}
},
"documentation":"<p>A specification for an Elastic GPU.</p>"
},
"ElasticGpuSpecifications":{
"type":"list",
"member":{
"shape":"ElasticGpuSpecification",
"locationName":"item"
}
},
"ElasticGpuState":{
"type":"string",
"enum":["ATTACHED"]
},
"ElasticGpuStatus":{
"type":"string",
"enum":[
"OK",
"IMPAIRED"
]
},
"ElasticGpus":{
"type":"structure",
"members":{
"ElasticGpuId":{
"shape":"String",
"documentation":"<p>The ID of the Elastic GPU.</p>",
"locationName":"elasticGpuId"
},
"AvailabilityZone":{
"shape":"String",
"documentation":"<p>The Availability Zone in the which the Elastic GPU resides.</p>",
"locationName":"availabilityZone"
},
"ElasticGpuType":{
"shape":"String",
"documentation":"<p>The type of Elastic GPU.</p>",
"locationName":"elasticGpuType"
},
"ElasticGpuHealth":{
"shape":"ElasticGpuHealth",
"documentation":"<p>The status of the Elastic GPU.</p>",
"locationName":"elasticGpuHealth"
},
"ElasticGpuState":{
"shape":"ElasticGpuState",
"documentation":"<p>The state of the Elastic GPU.</p>",
"locationName":"elasticGpuState"
},
"InstanceId":{
"shape":"String",
"documentation":"<p>The ID of the instance to which the Elastic GPU is attached.</p>",
"locationName":"instanceId"
}
},
"documentation":"<p>Describes an Elastic GPU.</p>"
},
"EnableVgwRoutePropagationRequest":{
"type":"structure",
"required":[
Expand Down Expand Up @@ -11264,6 +11441,11 @@
"documentation":"<p>Indicates whether this is a Spot instance or a Scheduled Instance.</p>",
"locationName":"instanceLifecycle"
},
"ElasticGpuAssociations":{
"shape":"ElasticGpuAssociationList",
"documentation":"<p>The Elastic GPU associated with the instance.</p>",
"locationName":"elasticGpuAssociationSet"
},
"NetworkInterfaces":{
"shape":"InstanceNetworkInterfaceList",
"documentation":"<p>[EC2-VPC] One or more network interfaces for the instance.</p>",
Expand Down Expand Up @@ -16340,6 +16522,10 @@
"documentation":"<p>[EC2-VPC] The primary IPv4 address. You must specify a value from the IPv4 address range of the subnet.</p> <p>Only one private IP address can be designated as primary. You can't specify this option if you've specified the option to designate a private IP address as the primary IP address in a network interface specification. You cannot specify this option if you're launching more than one instance in the request.</p>",
"locationName":"privateIpAddress"
},
"ElasticGpuSpecification":{
"shape":"ElasticGpuSpecifications",
"documentation":"<p>An Elastic GPU to associate with the instance.</p>"
},
"TagSpecifications":{
"shape":"TagSpecificationList",
"documentation":"<p>The tags to apply to the resources during launch. You can tag instances and volumes. The specified tags are applied to all instances or volumes that are created during launch.</p>",
Expand Down
140 changes: 140 additions & 0 deletions sdk/src/Services/EC2/Generated/Model/DescribeElasticGpusRequest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
/*
* Copyright 2010-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/

/*
* Do not modify this file. This file is generated from the ec2-2016-11-15.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;

using Amazon.Runtime;
using Amazon.Runtime.Internal;

namespace Amazon.EC2.Model
{
/// <summary>
/// Container for the parameters to the DescribeElasticGpus operation.
/// Describes the Elastic GPUs associated with your instances. For more information about
/// Elastic GPUs, see <a href="http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-gpus.html">Amazon
/// EC2 Elastic GPUs</a>.
/// </summary>
public partial class DescribeElasticGpusRequest : AmazonEC2Request
{
private List<string> _elasticGpuIds = new List<string>();
private List<Filter> _filters = new List<Filter>();
private int? _maxResults;
private string _nextToken;

/// <summary>
/// Gets and sets the property ElasticGpuIds.
/// <para>
/// One or more Elastic GPU IDs.
/// </para>
/// </summary>
public List<string> ElasticGpuIds
{
get { return this._elasticGpuIds; }
set { this._elasticGpuIds = value; }
}

// Check to see if ElasticGpuIds property is set
internal bool IsSetElasticGpuIds()
{
return this._elasticGpuIds != null && this._elasticGpuIds.Count > 0;
}

/// <summary>
/// Gets and sets the property Filters.
/// <para>
/// One or more filters.
/// </para>
/// <ul> <li>
/// <para>
/// <code>availability-zone</code> - The Availability Zone in which the Elastic GPU resides.
/// </para>
/// </li> <li>
/// <para>
/// <code>elastic-gpu-health</code> - The status of the Elastic GPU (<code>OK</code>
/// | <code>IMPAIRED</code>).
/// </para>
/// </li> <li>
/// <para>
/// <code>elastic-gpu-state</code> - The state of the Elastic GPU (<code>ATTACHED</code>).
/// </para>
/// </li> <li>
/// <para>
/// <code>elastic-gpu-type</code> - The type of Elastic GPU; for example, <code>eg1.medium</code>.
/// </para>
/// </li> <li>
/// <para>
/// <code>instance-id</code> - The ID of the instance to which the Elastic GPU is associated.
/// </para>
/// </li> </ul>
/// </summary>
public List<Filter> Filters
{
get { return this._filters; }
set { this._filters = value; }
}

// Check to see if Filters property is set
internal bool IsSetFilters()
{
return this._filters != null && this._filters.Count > 0;
}

/// <summary>
/// Gets and sets the property MaxResults.
/// <para>
/// The maximum number of results to return in a single call. To retrieve the remaining
/// results, make another call with the returned <code>NextToken</code> value. This value
/// can be between 5 and 1000.
/// </para>
/// </summary>
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}

// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}

/// <summary>
/// Gets and sets the property NextToken.
/// <para>
/// The token to request the next page of results.
/// </para>
/// </summary>
public string NextToken
{
get { return this._nextToken; }
set { this._nextToken = value; }
}

// Check to see if NextToken property is set
internal bool IsSetNextToken()
{
return this._nextToken != null;
}

}
}
Loading

0 comments on commit b85514e

Please sign in to comment.