计算机工程师分级_这些是每个计算机工程师都应该知道的数字

计算机工程师分级

In 2010, Jeff Dean from Google gave a wonderful talk at Stanford that made him quite famous. In it, he discussed a few numbers that are relevant to computing systems. Then Peter Norvig published those numbers for the first time on the internet.

2010年,来自Google的Jeff Dean在斯坦福大学进行了精彩的演讲,这使他颇有名气。 在其中,他讨论了一些与计算系统有关的数字。 然后,彼得·诺维格(Peter Norvig)首次在互联网上发布了这些数字。

Time passed, and the numbers changed. Here is a very good interactive web UI of those numbers which roughly tells how much they have changed over the years as a function of time.

时间过去了,数字改变了。 这是一个很好的交互式Web UI ,其中包含这些数字,可以粗略地说明这些年来这些数字随时间变化了多少。

This article is not only a compilation of Jeff Dean's estimated data, but rather it brings together all such numbers from different sources. This should help you as a system designer and architect. While designing, you can use these numbers to estimate the amount of resources your system needs.

本文不仅是杰夫·迪恩(Jeff Dean)估计数据的汇编,而且还汇集了来自不同来源的所有此类数据。 这应该可以帮助您作为系统设计师和架构师。 在设计时,您可以使用这些数字来估计系统所需的资源量。

粗略估算2019年的延迟数据: (Rough estimation of latency data for 2019:)

  1. L1 cache reference: 1 nanosecond.

    L1缓存参考:1纳秒。
  2. L2 cache reference: 4 nanoseconds.

    L2缓存参考:4纳秒。
  3. Mutex Lock / Unlock: 17 nanoseconds.

    互斥锁/解锁:17纳秒。
  4. Main memory / RAM reference: 100 nanoseconds.

    主内存/ RAM参考:100纳秒。
  5. Compress 1 KB with Zippy (currently called Snappy): 2000 nanoseconds or 2 microseconds.

    使用Zippy(当前称为Snappy )压缩1 KB:2000纳秒或2微秒。

  6. CPU branch mispredict: 3 nanoseconds.

    CPU分支预测错误 :3纳秒。

  7. Solid State Drive (SSD) random read: 16 microseconds.

    固态硬盘(SSD)随机读取:16微秒。
  8. Disk (Hard drive / magnetic drive) seek: 3 milliseconds.

    磁盘(硬盘驱动器/磁性驱动器)搜寻:3毫秒。
  9. Read 1,000,000 bytes sequentially from main memory: 4 microseconds.

    从主内存顺序读取1,000,000字节:4微秒。
  10. Read 1,000,000 bytes sequentially from SSD: 62 microseconds.

    从SSD顺序读取1,000,000字节:62微秒。
  11. Read 1,000,000 bytes sequentially from disk: 947 microseconds.

    从磁盘顺序读取1,000,000字节:947微秒。
  12. Round trip network request in same data centre : 500 microseconds.

    同一数据中心的往返网络请求:500微秒。
  13. Send 2000 bytes over commodity network: 62 nanoseconds.

    通过商品网络发送2000字节:62纳秒。

有效负载通过TCP传输所花费的时间: (Time Taken for payload to travel over TCP:)

Here is the amount of time required to transmit various data payloads on typical cell networks around the world assuming no data loss.

假设没有数据丢失,这是在世界各地的典型蜂窝网络上传输各种数据有效载荷所需的时间。

RTT — Round Trip Time — Total time taken for a data packet (bunch of data bytes) to travel from sender to receiver and receiver to sender over the network. In short, it’s called Ping time.

RTT —往返时间—数据包(数据字节束)在网络上从发送方到接收方以及从接收方到发送方传播所花费的总时间。 简而言之,称为Ping时间。

  1. Transfer of 1 byte to 13,000 bytes (roughly 13 KB) data takes 1 round trip or 1 RTT. Rough time taken — USA: 150 milliseconds, India: 1200 milliseconds, Brazil: 600 milliseconds.

    1字节到13,000字节(约13 KB)的数据传输需要1次往返或1次RTT。 花费的时间:美国:150毫秒,印度:1200毫秒,巴西:600毫秒。
  2. 13,001 bytes — 39,000 bytes (13 KB to 39 KB) takes 2 RTT. Rough time taken — USA: 300 milliseconds, India: 2400 milliseconds, Brazil: 1200 milliseconds.

    13,001字节-39,000字节(13 KB至39 KB)需要2个RTT。 花费的时间:美国:300毫秒,印度:2400毫秒,巴西:1200毫秒。
  3. 39,001 bytes — 91,000 bytes (39 KB to 91KB) takes 3 RTT. Rough time taken-USA: 450 milliseconds, India: 3600 milliseconds, Brazil: 1800 milliseconds.

    39,001字节— 91,000字节(39 KB至91KB)需要3个RTT。 花费的粗糙时间-美国:450毫秒,印度:3600毫秒,巴西:1800毫秒。
  4. 91,001 bytes — 195,000 bytes (91 KB to 195 KB) takes 4 RTT. Rough time taken — USA: 600 milliseconds, India: 4800 milliseconds, Brazil: 2400 milliseconds.

    91,001字节-195,000字节(91 KB至195 KB)需要4个RTT。 花费的时间:美国:600毫秒,印度:4800毫秒,巴西:2400毫秒。

So the greater the response size means more bytes, a longer round trip, more API latency, and ultimately a less user friendly app.

因此,响应大小越大,意味着字节越多,往返时间越长,API延迟越长,最终导致用户友好的应用程序越少。

This post will be updated when new or updated numbers are found. Please let me know if you are aware of new numbers.

找到新的或更新的号码后,该帖子将更新。 如果您知道新号码,请告诉我。

This article is originally published on Author's medium wall. If you like it, please give claps.

本文最初发表在作者的媒体墙上 。 如果喜欢,请鼓掌。

Reference:

参考:

  1. https://colin-scott.github.io/blog/2012/12/24/latency-trends/

    https://colin-scott.github.io/blog/2012/12/24/latency-trends/

  2. https://blog.std.in/2015/05/23/http-response-sizes-and-tcp/

    https://blog.std.in/2015/05/23/http-response-sizes-and-tcp/

  3. https://medium.com/@kousiknath/must-know-numbers-for-every-computer-engineer-6338a12c292c

    https://medium.com/@kousiknath/must-know-numbers-for-every-computer-engineer-6338a12c292c

翻译自: https://www.freecodecamp.org/news/must-know-numbers-for-every-computer-engineer/

计算机工程师分级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值