我不介意计算速度慢,但由于内存不足,我的电脑在运行一些程序时崩溃了。
是否任何Python IDLE程序能够访问所有已安装的RAM并在必要时使用它?
哦…你把很多你还没有完全理解的概念混在一起了。
我在考虑买台新电脑(我的旧电脑坏了)。
如果它坏了,你要么把它修好,要么买一个新的。
它向我解释了默认情况下程序如何在一个线程中运行,除非为多个线程编写。
由于GIL(全局解释器锁),Python程序将在一个线程上运行,这是真的。如果你想使用更多的cpu,你需要使用multiprocessing
库。
我不介意计算速度慢,但内存不足会导致一些程序运行中断[sic]
我想你是指和。
我怀疑这是不可能的。如果没有足够的物理RAM,程序可能会变得非常慢,速度可能是原来的1000倍。原因是RAM将被交换到磁盘,并且该操作需要更长的时间。但它不应该完全停止。"例如四个双通道ram是否可以与在IDLE中运行的Python程序一起工作?"这是我一直在考虑的。
是和不是。Python不能直接访问物理RAM。操作系统为应用程序提供虚拟RAM。通常,如果没有其他反对的理由,操作系统将提供物理RAM。因此,是的,更多的物理RAM通常会增加Python程序可用的物理RAM。
是否任何Python IDLE程序都能够访问所有已安装的RAM并在必要时使用它?
。例如,32位Python将只能处理一个子集。但是,即使使用64位Python,也会为操作系统保留一些内存。
可以计算并存储在阶段
要回答这个问题,我们需要知道你在计算什么以及需要多少内存。通常,可以计算内存需求。大0符号就是这样。通常你可以用内存补偿CPU,反之亦然。
如果有足够的时间和驱动器空间,是否可能有足够的计算能力?
对于某些任务,永远没有足够的计算能力,例如暴力破解密码。同样,我们需要知道您要计算的是什么。
如何处理?
首先,最好知道你的电脑规格。你有多少个CPU内核和多少RAM ?其次,查看任务管理器可以看到有多少内存正在使用、缓存和空闲?
很可能CPU大部分是空闲的(就像你说的,它可能只有8个中的1个),也很可能你的RAM仍然是空闲的。在这种情况下,你的算法就是蹩脚的,例如陷入无限循环。
了解物理RAM和虚拟RAM的区别。用正确的措辞说话。学习如何衡量两者。然后带着数字和源代码回来。
顺便说一句:你的电脑到底出了什么问题?你是怎么诊断的?如果你的电脑没有按照你的预期工作,可能只是程序有问题。