从高速互联网连接(比如 3 Mbps)下载数据需要多少处理能力?

从高速互联网连接(比如 3 Mbps)下载数据需要多少处理能力?

我只是想知道从互联网下载数据(例如电影)时的 CPU 使用率。有人能告诉我,下载时处理器的实际使用量是多少吗?首先,下载过程中是否真的需要处理器?

答案1

执行下载肯定需要处理器,您需要处理能力来将网络适配器收到的位模式转换为所需的数据表示(即您需要运行 TCP/IP 堆栈)。话虽如此,网络和存储设备的速度可能比低端 CPU 慢几个数量级,所以一般来说您不必担心。

例如,小型且快速的 TCP/IP 协议栈之一,将在ATMega88。这是一个 8 位处理器,设计运行速度为 20 MHz。理论上,该处理器足以控制 TCP/IP 堆栈,因此足以下载数据。

当然,当涉及到这种类型的 CPU 时,可以下载的数据量可能会受到时钟频率的限制。限制因素将是运行 TCP/IP 堆栈所需的时钟周期,以及将数据存储到某种存储器所需的时钟周期。

如果我们以你的例子为例,做一些非常不科学的即兴计算:3mbps 的连接相当于每秒接收 384kByte 的原始数据。如果你的 CPU 以 20 MHz 运行,它将有大约 (20 * 10^6)/(384 * 1024),这大致相当于每接收一个原始字节数据有 50 条指令。我不是 TCP/IP 堆栈的专家,但我猜,要将实现压缩到如此高效的水平将非常困难。你可能需要更好的处理器才能获得 3mpbs 的稳定吞吐量。

无论如何,如果您计划使用它来设计任何东西,您应该首先使用实际硬件和您计划使用的实际 TCP/IP 堆栈进行测试。

答案2

没有 ;) 好吧:我的手机可以做到。说真的 - 低功率的计算机对此没什么用。

但它仍在做一些事情 ;)

答案3

这取决于您的互联网连接类型;不久前,我通过将某人的调制解调器从 USB 连接切换到以太网连接,帮助某人显著降低了 CPU 使用率,因为 USB 是一种相对 CPU 密集型的方法(这是一台 800MHz 奔腾 3)

对于现代 PC 来说,CPU 速度可能不是一个影响因素

相关内容