PyCharm 运行缓慢
Posted
技术标签:
【中文标题】PyCharm 运行缓慢【英文标题】:PyCharm running way slow 【发布时间】:2021-11-25 14:18:42 【问题描述】:我是PyCharm by JetBrains 的忠实粉丝,但我确实遇到了一些我想也许我会在这里问的问题。
-
它意外挂起,这种情况经常发生。总体而言,它对我的口味来说有点慢,我喜欢一些关于如何提高 IDE 性能的提示
通常当我打开一个项目时,PyCharm 似乎将所有内置函数标记为未解决的引用警告。诸如 open()、str() 等之类的东西,以及我导入的一些模块,例如 sys(这些是最常见的违规者 :))。
我能够修复 (2) 的唯一方法是转到 PyCharm -> Preferences -> Python Interpreters -> Paths -> Reload List of Paths 但我必须经常这样做以保证询问更永久的修复。
我的配置: Mac OSX Lion 在配备 8GB RAM 的 MacBook Pro(2010 年中)上运行
现在看,我知道如果没有任何类型的快照或有关正在发生的事情的更多信息,诊断此类事情很困难,但我只是想问是否有人以前遇到过这些问题,如果有,这些问题是如何得到的解决了吗?
附:我也曾就这些问题联系过 JetBrains,但老实说,我倾向于在这里找到解决常见问题的好方法,我想我不妨问问
【问题讨论】:
当控制台有很多行时,我的 PyCharm 运行速度非常慢(经常挂起几秒钟)。 => 我删除了一些打印,它恢复正常 另见:***.com/questions/38242978/… 【参考方案1】:PyCharm 的每个性能问题都是独一无二的,对一个人有帮助的解决方案对另一个人不起作用。解决特定性能问题的唯一正确方法是通过提交票证或directly into the issue tracker 捕获 CPU 分析器快照 as described in this document 和 sending it to PyCharm support team。
在分析 CPU 快照后,PyCharm 团队将进行修复并发布一个新版本,该版本(希望)不受此特定性能问题的影响。团队还可能会根据对所提供数据的分析建议您进行一些配置更改或解决方法来解决问题。
所有其他“解决方案”(例如启用省电模式和更改突出显示级别)只会隐藏应该修复的真正问题。
【讨论】:
@CrazyCoder 如果 PyCharm 开始消耗 CPU 周期,我们能做些什么吗?以前它会在特定的 Python 文件集中在编辑器中时发生,但这已在版本 5 中得到修复。但现在在 2016.1.2 版本中,IDE 似乎随机开始使用 >50%,即使所有编辑器文件都关闭并且没有运行,并且在省电模式下,它会无限期地持续下去,直到我关闭 PyCharm,然后很快又重新开始。任何想法?内存约为 200MB(共 725 个)。我正在运行 OS X 10.11.3,PyCharm build #PY-145.844。这对我来说是个大问题,因为我住在一个停电的地方。 为了澄清,我的意思是弄清楚 PyCharm 在处理过程中遇到了什么问题。我作为评论发布,因为我认为 PyCharm 不需要很多糟糕的 SO 问题,而且对于支持过程中不明显的错误的问题,我没有太多运气。我的风扇刚停了几个小时,使用率又回落到 5%,但它又一次猛增。我没有在 PyCharm 中做任何事情。 @Chris 请参考intellij-support.jetbrains.com/hc/articles/207241235 这与在 Python 控制台中运行的 iPython 有关,可能在出现错误时尝试运行 Django。从我的虚拟环境中删除 ipython 似乎已经解决了这个问题 - 到目前为止,非 ipython 控制台没有引起同样的问题。所以与 PyCharm 无关。感谢@CrazyCoder 的跟进。 “PyCharm 的每一个性能问题都是独一无二的”,换句话说,PyCharm 是不可修复的 :-( 相反,一个常见的非唯一问题似乎是项目中的一个大数据文件夹应该是排除在检查之外。【参考方案2】:1.更改检查级别
当前 PyCharm 版本允许您更改其执行的静态代码分析类型,并且还具有省电/CPU 功能(单击右下角锁旁边的图标):
2。更改索引目录
排除在项目路径中设置但实际上不需要搜索和索引的目录。按ALT+CTRL+S
并搜索project
。
3.做记忆扫描 还有一个有趣的功能:
进入设置(文件/设置)并搜索内存。在IDE Settings>Appearance
-> 勾选Show memory indicator
。内存条将显示在右下角(见下图)。单击此栏以运行垃圾收集/内存清理。
【讨论】:
这样的东西不应该偶尔自动运行一次吗? @BerryTsakala 是真的,它通常工作得很好。我对 Jetbrains GC 的改进不熟悉,但是这里是 JAVA 中“普通香草”GC 的一个很好的总结:javarevisited.blogspot.com.es/2011/04/…Cheers! ctrl+alt+s -> 设置 我也会禁用您不使用的任何插件。双班并搜索“插件”并取消选中所有您不需要的。 关闭插件有助于快速启动。【参考方案3】:关于冻结问题,我们发现在处理包含至少一个极长行的 CSV 文件时会发生这种情况。
复制:
[print(x) for x in (['A' * 54790] + (['a' * 1421] * 10))]
但是,它似乎已在 PyCharm 4.5.4 中修复,因此如果您遇到此问题,请尝试更新您的 PyCharm。
【讨论】:
【参考方案4】:Lorenz Lo Sauer 已经对此提出了一个很好的问题。但是如果你想通过 Pycharm Tuning 解决这个问题(不关闭 Pycharm 代码检查)。您可以根据需要调整堆大小。因为我更喜欢对运行缓慢的 Pycharm 应用程序使用增加堆大小的解决方案。
您可以通过编辑 pycharm.exe.vmoptions 文件来调整堆大小。和 pycharm64.exe.vmoptions 用于 64 位应用程序。然后在上面编辑 -Xmx 和 -Xms 值。
所以我为我的 Pycharm 堆大小分配了 2048m 的 xmx 和 xms 值(即 2GB)。这是我的配置。我有 8GB 内存,所以我用这个设置进行了设置:
-server
-Xms2048m
-Xmx2048m
-XX:MaxPermSize=2048m
-XX:ReservedCodeCacheSize=2048m
保存设置,然后重新启动 IDE。我在设置->外观和行为->外观中启用了“显示内存指示器”。看看它的实际效果:
Pycharm 现在运行迅速且运行良好。
参考:https://www.jetbrains.com/help/pycharm/2017.1/tuning-pycharm.html#d176794e266
【讨论】:
完美:) 应该提到重启IDE。 这是最好的答案(请参阅下面的 JMJ 的答案,它提供了一种简单的编辑方法)。我认为 PyCharm 的默认最大内存 2GB 对于许多用户来说有点低。【参考方案5】:如前所述,通过更改堆大小非常容易。 只需转到 Pycharm HELP -> Edit custom VM option ... 并将其更改为:
-Xms2048m
-Xmx2048m
【讨论】:
【参考方案6】:我找到了一个在 Windows 上运行良好的解决方案,并想分享它。
无效的解决方案:我有 16GB 的 RAM,但仍然有可怕的延迟。 PyCharm 占用的 RAM 不到 1GB,所以这不是问题。关闭检查根本没有帮助,而且我没有任何我记得的特殊插件。我还尝试过处理该进程的 CPU 亲和性,这短暂地奏效了,但并没有真正奏效。
效果很好,几乎完美:
-
将 PyCharm 的 CPU 优先级设置为高于正常水平
将 Python 进程的 CPU 优先级设置为低于正常水平
您可以手动执行此操作,但我建议使用一个程序,该程序将在重新启动和多个实例时保留设置。我使用了 Process Hacker:右键单击进程 -> 优先级 -> 设置优先级。然后再次右键单击 -> 进程 -> 并选择“保存为 pycharm64.exe”,类似地为 python“保存为 python.exe”。最后在 Process Hacker 中转到选项并选择“登录时开始”。 这将使所有 Pycharm 和 python 可执行文件获得这些 CPU 优先级,即使在重新启动程序和/或 Windows 之后,也不管你启动了多少 python 实例。
基本上,PyCharm 的大部分滞后可能是由于与其他程序的冲突。想一想:是的,PyCharm 需要大量 CPU,但 PyCharm 开发人员并不愚蠢。他们可能至少确保它可以在空核心上运行而不会滞后。但现在你打开 Chrome 和 30 个标签页、Fiddler、一个 FTP 程序、iTunes、Word、Slack 等,它们都在与 PyCharm 竞争相同的 CPU 优先级。每当内核上所有程序的总和 > 100% 时,您就会看到滞后。切换到“高于正常”优先级使 PyCharm 更接近可能测试过的空核心。
至于python.exe上的Below Normal,基本上你不希望自己的开发拖慢你的电脑速度。大多数 python 程序本质上是“批处理”程序,您可能不会注意到运行所需的额外时间。如果您正在开发图形交互程序,我不建议您这样做。
【讨论】:
所有这些对于 4 个物理核心(8 个逻辑核心)的计算机来说可能都不是问题。就我而言,我坚持使用 2 个物理核心(4 个逻辑核心),因此管理进行本地开发的流程更为重要。 警告:不要超过正常值。如果您这样做,您将与 Windows 进程竞争,并可能对您的计算机造成严重破坏。如果有的话,你甚至不会让它更快。【参考方案7】:在我的例子中,问题是项目目录中的一个文件夹包含 300k+ 个文件,总计 11Gb。这只是一个临时文件夹,其中包含一些计算的图像结果。将此文件夹移出项目结构后,缓慢消失了。我希望这可以帮助某人,请检查您的项目结构,看看是否有什么不需要的。
【讨论】:
这个!如果要将文件夹保留在项目目录中,请通过以下方式将其从索引中排除:右键单击要排除的文件夹,“将目录标记为”->“已排除” 这是我的确切问题,我的代码旁边存储了太多图像,并且通过将目录标记为排除,缓慢/口吃消失了。【参考方案8】:在我的情况下,它非常慢,我需要更改检查设置,我尝试了所有方法,唯一有效的方法是从 2018.2 版本到 2016.2,有时最好在后面进行一些更新...
【讨论】:
在这里添加更多细节【参考方案9】:我以为我在使用 PyCharm 时遇到了速度问题,但最后发现 PyCharm 中的输出控制台不一定模拟最先进的终端应用程序的输出。
这是我的解决方案:
单击配置的下拉(箭头)符号->单击edit configuration
->单击emulate terminal in output console
->单击ok
->运行配置。
【讨论】:
【参考方案10】:一切正常,但在我定义了我的文件 - 设置 - 项目:名称 - Python解释器之前,我在代码编辑器中出现了严重的延迟。
【讨论】:
以上是关于PyCharm 运行缓慢的主要内容,如果未能解决你的问题,请参考以下文章