pycharm funziona molto lentamente


123

Sono un grande fan di PyCharm di JetBrains, ma mi imbatto in alcuni problemi che ho pensato forse chiederò qui.

  1. Si blocca in modo imprevisto e questo accade spesso. Nel complesso, è un po 'lento per i miei gusti e mi piacerebbe alcuni suggerimenti su come aumentare le prestazioni dell'IDE
  2. Spesso quando apro un progetto PyCharm sembra contrassegnare tutti i built-in come avvisi di riferimento non risolto. cose come open (), str (), ecc. così come alcuni dei moduli che importa come sys (questi sono i trasgressori più comuni :)).

L'unico modo in cui sono in grado di correggere (2) è andare su PyCharm -> Preferenze -> Interpreti Python -> Percorsi -> Ricarica elenco di percorsi, ma devo farlo abbastanza spesso per giustificare la richiesta di una correzione più permanente.

La mia configurazione: Mac OSX Lion in esecuzione su MacBook Pro (metà 2010) con 8 GB di RAM

Ora guarda, capisco che diagnosticare cose come queste è difficile senza alcun tipo di istantanea o ulteriori informazioni su cosa sta succedendo, ma sto semplicemente chiedendo se qualcuno si è imbattuto in questi problemi prima e, in tal caso, come sono stati risolti?

Grazie!

PS Ho anche contattato JetBrains riguardo a questi problemi, ma onestamente tendo a trovare soluzioni carine a problemi comuni qui e ho pensato che avrei potuto anche chiedere


Il mio PyCharm funzionava molto lentamente (si blocca per alcuni secondi molto spesso) quando la console aveva molte linee. => Ho rimosso alcune impronte ed è tornato alla normalità
Vincent J

Risposte:


27

Ogni problema di prestazioni con PyCharm è unico, una soluzione che aiuta una persona non funzionerà per un'altra. L'unico modo corretto per risolvere il tuo problema di prestazioni specifico è acquisire l'istantanea del profiler della CPU come descritto in questo documento e inviarlo al team di supporto di PyCharm , inviando un ticket o direttamente nel tracciatore di problemi .

Dopo che lo snapshot della CPU è stato analizzato, il team di PyCharm lavorerà su una correzione e rilascerà una nuova versione che (si spera) non sarà influenzata da questo specifico problema di prestazioni. Il team potrebbe anche suggerirti alcune modifiche alla configurazione o soluzioni alternative per risolvere il problema in base all'analisi dei dati forniti.

Tutte le altre "soluzioni" (come abilitare la modalità di risparmio energetico e cambiare il livello di evidenziazione) nascondono solo i problemi reali che dovrebbero essere risolti.


Ho pubblicato due domande: una si chiamava "[PyCharm-Problem] PyCharm funziona molto lentamente" e l'altra si chiamava "[PyCharm-Problem] PyCharm non riconosce i built-in e alcuni moduli" ma comunque avete già risposto ad entrambi quindi grazie :)
mlnyc

Li hai pubblicati dopo aver pubblicato la domanda qui. Li ho appena ricevuti e ho risposto a entrambi.
CrazyCoder

1
@CrazyCoder c'è qualcosa che possiamo fare se PyCharm inizia a consumare cicli della CPU? In precedenza accadeva mentre un file Python specifico era focalizzato nell'editor, ma questo è stato risolto con la versione 5. Ma ora con la versione 2016.1.2 l'IDE sembra iniziare a usare casualmente> 50% anche con tutti i file dell'editor chiusi e niente in esecuzione e in modalità di risparmio energetico, e continua a tempo indefinito fino a quando non chiudo PyCharm, e presto ricomincia a riprenderlo. Qualche idea? La memoria è di circa 200 MB (di 725). Utilizzo OS X 10.11.3, build PyCharm # PY-145.844. Questo è un grosso problema per me dato che vivo in un posto con interruzioni di corrente.
Chris

1
@ Chris si prega di fare riferimento a intellij-support.jetbrains.com/hc/articles/207241235
CrazyCoder

2
"Ogni problema di prestazioni con PyCharm è unico" in altre parole, PyCharm non è risolvibile :-( Al contrario, un problema comune non unico sembra essere una grande cartella di dati nel progetto che dovrebbe essere esclusa dall'ispezione.
jolvi

169

1. Modificare il livello di ispezione

Le attuali versioni di PyCharm consentono di modificare il tipo di analisi statica del codice che esegue e dispongono anche di una funzione di risparmio energetico / CPU (fare clic sull'icona in basso a destra, accanto al lucchetto):

inserisci qui la descrizione dell'immagine

2. Modificare le directory indicizzate
Escludere dall'indicizzazione le directory che sono impostate nei percorsi del progetto ma che non devono essere ricercate e indicizzate. Premere ALT+CTRL+Se cercare project.

3. Esegui sweep di memoria
C'è un'altra caratteristica interessante:

Vai nelle impostazioni (File / Impostazioni) e cerca la memoria . In IDE Settings>Appearance-> tick Show memory indicator. Verrà visualizzata una barra di memoria nell'angolo in basso a destra (vedere l'immagine sotto). Fare clic su questa barra per eseguire una garbage collection / sweep della memoria .

inserisci qui la descrizione dell'immagine


1
Ho risolto il mio problema. Stava monopolizzando più del 100% della CPU. Non più. :)
Kashyap

6
Tali cose non dovrebbero funzionare automaticamente una volta ogni tanto?
Berry Tsakala

16
ctrl + alt + s -> impostazioni
mateuszb

2
Il punto n. 2 mi ha fatto risparmiare tempo!
Wok

2
Disabiliterei anche tutti i plugin che non stai utilizzando. Doppio spostamento e cerca "plugin" e deseleziona tutti quelli che non ti servono.
Steve Rossiter

11

Ebbene Lorenz Lo Sauer ha già una buona domanda per questo. ma se vuoi risolvere questo problema tramite Pycharm Tuning (senza disattivare l'ispezione del codice Pycharm). puoi regolare la dimensione dell'heap di cui hai bisogno. poiché preferisco utilizzare una soluzione di dimensione heap crescente per l'applicazione Pycharm a esecuzione lenta.

È possibile ottimizzare la dimensione dell'heap modificando il file pycharm.exe.vmoptions. e pycharm64.exe.vmoptions per applicazioni a 64 bit. e quindi modificare i valori -Xmx e -Xms su di esso.

Quindi assegno 2048 m per il valore xmx e xms (che è 2 GB) per la dimensione dell'heap di Pycharm. Ecco la mia configurazione. Ho 8 GB di memoria, quindi l'ho configurato con questa impostazione:

-server
-Xms2048m
-Xmx2048m
-XX:MaxPermSize=2048m
-XX:ReservedCodeCacheSize=2048m

salvare l'impostazione e riavviare IDE. E abilito "Mostra indicatore di memoria" nelle impostazioni-> Aspetto e comportamento-> Aspetto. per vederlo in azione:

Picharm lento, battitura lenta, aumenta la dimensione dell'heap Picharm

e Pycharm è veloce e funziona bene ora.

Riferimento: https://www.jetbrains.com/help/pycharm/2017.1/tuning-pycharm.html#d176794e266


1
Perfetto :) Dovrebbe essere menzionato il riavvio dell'IDE.
Appyx

1
Questa è la risposta migliore (vedi la risposta di JMJ di seguito che fornisce un modo semplice per modificarla). La memoria predefinita di PyCharm massima di 2 GB è un po 'bassa per molti utenti, credo.
Stephen

7

Nel mio caso, il problema era una cartella nella directory del progetto contenente oltre 300.000 file per un totale di 11 GB. Questa era solo una cartella temporanea con i risultati delle immagini di alcuni calcoli. Dopo aver spostato questa cartella fuori dalla struttura del progetto, la lentezza è scomparsa. Spero che questo possa aiutare qualcuno, per favore controlla la struttura del tuo progetto per vedere se c'è qualcosa che non è necessario.


3
Questo! Se si desidera mantenere la cartella nella directory del progetto, escluderla dall'indicizzazione: fare clic con il pulsante destro del mouse sulla cartella che si desidera escludere, "Contrassegna directory come" -> "Esclusa"
dtadres

6

È semplicissimo cambiare la dimensione dell'heap come è stato menzionato. Semplicemente andando su Pycharm HELP -> Modifica opzione VM personalizzata ... e modificala in:

-Xms2048m
-Xmx2048m

4

Per quanto riguarda il problema del blocco, abbiamo riscontrato che ciò si verificava durante l'elaborazione di file CSV con almeno una riga estremamente lunga.

Per riprodurre:

[print(x) for x in (['A' * 54790] + (['a' * 1421] * 10))]

Tuttavia, sembra che sia stato corretto in PyCharm 4.5.4 , quindi se si verifica questo problema, prova ad aggiornare il tuo PyCharm.


2

Ho trovato una soluzione a questo problema che funziona perfettamente su Windows e volevo condividerla.

Soluzioni che non hanno funzionato: ho 16 GB di RAM e ho ancora un terribile ritardo. PyCharm richiede meno di 1 GB di RAM per me, quindi non era questo il problema. Disattivare le ispezioni non ha aiutato affatto e non avevo plugin speciali che ricordo. Ho anche provato a giocare con le affinità della CPU per il processo, che ha funzionato brevemente ma non proprio.

Cosa ha funzionato magnificamente, quasi perfettamente:

  1. Imposta la priorità della CPU di PyCharm su Above Normal
  2. Imposta la priorità della CPU per i processi Python su Below Normal

Puoi farlo manualmente, ma ti consiglio di utilizzare un programma che manterrà l'impostazione durante i riavvii e per più istanze. Ho usato Process Hacker: fai clic con il pulsante destro del mouse sul processo -> Priorità -> Imposta la priorità. Quindi fare nuovamente clic con il pulsante destro del mouse -> Processo -> e selezionare "Salva per pycharm64.exe" e analogamente per python "Salva per python.exe". Infine in Process Hacker vai su Opzioni e seleziona "Avvia quando accedo". Questo farà in modo che TUTTI gli eseguibili di Pycharm e python acquisiscano queste priorità della CPU, anche dopo il riavvio del programma e / o di Windows, e indipendentemente dal numero di istanze di Python che avvii.

Fondamentalmente, gran parte del ritardo di PyCharm potrebbe essere dovuto a conflitti con altri programmi. Pensaci: Sì, PyCharm richiede molta CPU, ma gli sviluppatori di PyCharm non sono stupidi. Probabilmente hanno almeno assicurato che possa funzionare senza ritardi su un core vuoto. Ma ora apri Chrome e 30 schede, Fiddler, un programma FTP, iTunes, Word, Slack, ecc.E competono tutti con PyCharm allo stesso livello di priorità della CPU. Ogni volta che la somma di tutti i programmi è> 100% su un core, vedi lag. Passare alla priorità Above Normal dà a PyCharm qualcosa di più vicino al core vuoto su cui è stato probabilmente testato.

Per quanto riguarda Below Normal su python.exe, fondamentalmente non vuoi rallentare il tuo computer con il tuo sviluppo. La maggior parte dei programmi python sono essenzialmente programmi "batch" e probabilmente non noterai il tempo aggiuntivo necessario per l'esecuzione. Non lo consiglio se stai sviluppando un programma grafico interattivo.


Tutto ciò potrebbe essere un problema minore con un computer con 4 core fisici (8 core logici). Nel mio caso sono bloccato con 2 core fisici (4 logici), quindi è più importante gestire i processi che fanno sviluppo locale.
Stephen

3
Avvertenza : non andare oltre il normale. Se lo fai, competerai con i processi di Windows e probabilmente causerai il caos sul tuo computer. E non lo renderesti nemmeno molto più veloce, se non del tutto.
Stephen

0

Nel mio caso, è stato molto lento e avevo bisogno di cambiare le impostazioni delle ispezioni, ho provato di tutto, l'unica cosa che ha funzionato era passare dalla versione 2018.2 alla 2016.2, a volte è meglio essere dietro alcuni aggiornamenti ...


Aggiungi altri dettagli qui
Mathews Sunny
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.