<p>As far as I'm aware, there is no universal standard amongst cloud providers. One reason for this is because most cloud providers like to abstract how their backend infrastructure, that their instances run on, is managed. How your instance is ran could change minute by minute depending on the cloud provider. The user doesn't care as long as they are getting the desired computing power that they want. Cloud providers also may not want to divulge their exact infrastructure metrics for proprietary reasons as well. </p>

<p>Despite these reasons, some cloud providers offer a standard amongst their own virtual instances. These standards are relative to the computing power of each instance type that the provider offers.</p>

<p>For example, Amazon Web Services uses EC2 Computing Units (ECU) as a metric to compare the approximate computing power in relation to each instance. Comparing two instances types such as an m5.large and an m5.xlarge for example, the m5.large has an ECU of 8 vs the m5.xlarge which has a ECU of 16. The m5.xlarge has roughly double the compute power and therefore double the cost. </p>

CC BY-SA 4.0
2018-10-30T19:37:28.943Z
Thanks! I was aware of ECU. However, this is not useful for a more general description of computing power and does not really tell you about the "ratio" of RAM vs CPU for example...
Michael
CC BY-SA 4.0
2018-10-30T19:45:21.923Z
In relation to the instance itself, no it doesn't. However, I do think it gives a general ratio when compared to other instance types. ECU gives you an approximation when comparing say an m4.large and a c5.large. While the mem/cpu ratios are different, you can say that you are getting roughly 38% more general computing power. Granted your workload plays a big factor in this, which is exactly why they offer the different instance types in the first place.
Preston Martin
CC BY-SA 4.0
2018-10-30T19:47:52.890Z
Sure, but this is not really answering my initial question. Or is it?
Michael
CC BY-SA 4.0
2018-10-30T20:04:01.337Z
I guess the first part of my answer is that "no I don't believe there is a metric that can be used to determine the optimal cpu/mem/disk distributions across cloud providers", and the second part of my answer is an example of a metric that does exist within AWS that does give you a way to at least a way to approximate the compute power of the instances you are running your software on compared to other instances and their prices.
Preston Martin
CC BY-SA 4.0
2018-10-31T09:56:49.247Z
Fair enough....
Michael
CC BY-SA 4.0
2018-10-30T18:32:34.853Z
2018-10-30T18:32:34.853Z
Preston Martin
<p>Let's say I have a piece of software which does a computational task that is pretty demanding to either CPU/GPU/RAM/Disk-IO or a combination of those. Then it would be optimal if one has some metric to describe what the optimal configuration of a machine would be to run this software.</p>

<p>Guess that metric should include: 1) "minimal requirements" and more importantly 2) the "optimal ratio" of the above parameters, so that there is no idling CPU/RAM/GPU so that I get the best computation per money/electricity/computation time.</p>

<p>This is especially true, if I want to run your job on AWS/GoogleCloud/OtherProvider or on an HPC environment where you can pick those parameters.</p>

<p>I am aware that this is probably a pretty hard problem, since it is not easy to compare different kinds of CPUs (Cache, clock speed, etc.) or different kinds of RAM.</p>

<p>But still, does there exist and "standard" or approach for this? If yes, what are the methods to establish such a metric?</p>

<p>PS: Is this the right place to post this question?</p>

<amazon-web-services><google-cloud-platform><metrics><performance>
Is there an established metric to describe optimal/needed ressources for a specific computational task?
Michael
# Is there an established metric to describe optimal/needed ressources for a specific computational task?

(Asked by: username_0 on 2018-10-30)

Let's say I have a piece of software which does a computational task that is pretty demanding to either CPU/GPU/RAM/Disk-IO or a combination of those. Then it would be optimal if one has some metric to describe what the optimal configuration of a machine would be to run this software.

Guess that metric should include: 1) "minimal requirements" and more importantly 2) the "optimal ratio" of the above parameters, so that there is no idling CPU/RAM/GPU so that I get the best computation per money/electricity/computation time.

This is especially true, if I want to run your job on AWS/GoogleCloud/OtherProvider or on an HPC environment where you can pick those parameters.

I am aware that this is probably a pretty hard problem, since it is not easy to compare different kinds of CPUs (Cache, clock speed, etc.) or different kinds of RAM.

But still, does there exist and "standard" or approach for this? If yes, what are the methods to establish such a metric?

PS: Is this the right place to post this question?

**Tags:** amazon-web-services, google-cloud-platform, metrics, performance


---

## 1 answers

### Answer by username_1 on 2018-10-30. Score: 1

As far as I'm aware, there is no universal standard amongst cloud providers. One reason for this is because most cloud providers like to abstract how their backend infrastructure, that their instances run on, is managed. How your instance is ran could change minute by minute depending on the cloud provider. The user doesn't care as long as they are getting the desired computing power that they want. Cloud providers also may not want to divulge their exact infrastructure metrics for proprietary reasons as well.

Despite these reasons, some cloud providers offer a standard amongst their own virtual instances. These standards are relative to the computing power of each instance type that the provider offers.

For example, Amazon Web Services uses EC2 Computing Units (ECU) as a metric to compare the approximate computing power in relation to each instance. Comparing two instances types such as an m5.large and an m5.xlarge for example, the m5.large has an ECU of 8 vs the m5.xlarge which has a ECU of 16. The m5.xlarge has roughly double the compute power and therefore double the cost.

> **Comments:**
> **username_0**: Thanks! I was aware of ECU. However, this is not useful for a more general description of computing power and does not really tell you about the "ratio" of RAM vs CPU for example...  
> **username_1**: In relation to the instance itself, no it doesn't. However, I do think it gives a general ratio when compared to other instance types. ECU gives you an approximation when comparing say an m4.large and a c5.large. While the mem/cpu ratios are different, you can say that you are getting roughly 38% more general computing power. Granted your workload plays a big factor in this, which is exactly why they offer the different instance types in the first place.  
> **username_0**: Sure, but this is not really answering my initial question. Or is it?  
> **username_1**: I guess the first part of my answer is that "no I don't believe there is a metric that can be used to determine the optimal cpu/mem/disk distributions across cloud providers", and the second part of my answer is an example of a metric that does exist within AWS that does give you a way to at least a way to approximate the compute power of the instances you are running your software on compared to other instances and their prices.  
> **username_0**: Fair enough....  

---

