pycharm วิ่งทางช้า


123

ฉันเป็นแฟนตัวยงของPyCharm โดย JetBrainsแต่ฉันพบปัญหาบางอย่างที่ฉันคิดว่าฉันอาจจะถามที่นี่

  1. มันค้างโดยไม่คาดคิดและเกิดขึ้นบ่อยครั้ง โดยรวมแล้วมันช้าไปหน่อยสำหรับรสนิยมของฉันและฉันชอบเคล็ดลับในการเพิ่มประสิทธิภาพของ IDE
  2. บ่อยครั้งเมื่อฉันเปิดโครงการ PyCharm ดูเหมือนจะตั้งค่าสถานะบิวท์อินทั้งหมดเป็นคำเตือนการอ้างอิงที่ไม่ได้แก้ไข สิ่งต่างๆเช่น open (), str () ฯลฯ รวมถึงโมดูลบางอย่างที่ฉันนำเข้าเช่น sys (สิ่งเหล่านี้เป็นตัวการกระทำผิดที่พบบ่อยที่สุด :))

วิธีเดียวที่ฉันสามารถแก้ไข (2) คือไปที่ PyCharm -> Preferences -> Python Interpreters -> Paths -> Reload List of Paths แต่ฉันต้องทำสิ่งนี้บ่อยพอที่จะรับประกันการถามเกี่ยวกับการแก้ไขที่ถาวรกว่า

การกำหนดค่าของฉัน: Mac OSX Lion ทำงานบน MacBook Pro (กลางปี ​​2010) พร้อม RAM 8GB

ตอนนี้ดูฉันเข้าใจแล้วว่าการวินิจฉัยสิ่งต่างๆเช่นนี้เป็นเรื่องยากโดยไม่มีภาพรวมหรือข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่เกิดขึ้น แต่ฉันแค่ถามว่ามีใครเคยพบปัญหาเหล่านี้มาก่อนหรือไม่และถ้าเป็นเช่นนั้นปัญหาเหล่านี้ได้รับการแก้ไขอย่างไร

ขอบคุณ!

ป.ล. ฉันได้ติดต่อ JetBrains เกี่ยวกับปัญหาเหล่านี้ด้วย แต่โดยสุจริตฉันมักจะพบวิธีแก้ปัญหาที่ดีสำหรับปัญหาทั่วไปที่นี่และฉันคิดว่าฉันก็อาจถามเช่นกัน


PyCharm ของฉันทำงานช้ามาก (แฮงค์สองสามวินาทีบ่อยมาก) เมื่อคอนโซลมีเส้นมาก => ฉันลบภาพพิมพ์บางส่วนและมันก็กลับมาเป็นปกติ
Vincent J

ดูเพิ่มเติมที่: stackoverflow.com/questions/38242978/…
Stephen

คำตอบ:


27

ทุกปัญหาด้านประสิทธิภาพของ PyCharm นั้นไม่เหมือนใครวิธีแก้ปัญหาที่ช่วยคน ๆ หนึ่งจะไม่ได้ผลกับคนอื่น วิธีเดียวที่เหมาะสมในการแก้ไขปัญหาประสิทธิภาพการทำงานที่เฉพาะเจาะจงของคุณโดยการจับภาพรวม CPU Profiler ตามที่อธิบายไว้ในเอกสารฉบับนี้และส่งไปยังทีมสนับสนุน PyCharmทั้งโดยการส่งตั๋วหรือโดยตรงในการติดตามปัญหา

หลังจากวิเคราะห์สแนปช็อตของ CPU แล้วทีม PyCharm จะดำเนินการแก้ไขและเผยแพร่เวอร์ชันใหม่ซึ่ง (หวังว่า) จะไม่ได้รับผลกระทบจากปัญหาด้านประสิทธิภาพนี้ ทีมงานอาจแนะนำให้คุณเปลี่ยนการกำหนดค่าหรือวิธีแก้ปัญหาเพื่อแก้ไขปัญหาโดยอาศัยการวิเคราะห์ข้อมูลที่ให้มา

"วิธีแก้ปัญหา" อื่น ๆ ทั้งหมด (เช่นการเปิดใช้งานโหมดประหยัดพลังงานและการเปลี่ยนระดับการไฮไลต์) จะซ่อนปัญหาที่แท้จริงที่ควรได้รับการแก้ไข


ฉันโพสต์คำถามสองข้อ: คำถามหนึ่งชื่อ "[PyCharm-Problem] PyCharm ทำงานช้ามาก" และอีกคำถามหนึ่งชื่อว่า "[PyCharm-Problem] PyCharm ไม่รู้จักบิวด์อินและโมดูลบางตัว" แต่อย่างไรก็ตามคุณตอบสนองทั้งสองอย่างแล้ว ขอบคุณมาก :)
mlnyc

คุณโพสต์ไว้หลังจากโพสต์คำถามที่นี่ ฉันเพิ่งได้รับและตอบกลับทั้งสองคน
CrazyCoder

1
@CrazyCoder มีอะไรที่เราสามารถทำได้ถ้า PyCharm เริ่มใช้ CPU รอบ? ก่อนหน้านี้จะเกิดขึ้นในขณะที่ไฟล์ Python เฉพาะถูกโฟกัสในตัวแก้ไข แต่สิ่งนี้ได้รับการแก้ไขด้วยเวอร์ชัน 5 แต่ตอนนี้ในเวอร์ชัน 2016.1.2 ดูเหมือนว่า IDE จะเริ่มใช้งานแบบสุ่ม> 50% แม้ว่าจะปิดไฟล์ตัวแก้ไขทั้งหมดและไม่มีอะไรทำงานและ ในโหมดประหยัดพลังงานและจะดำเนินต่อไปเรื่อย ๆ จนกว่าฉันจะปิด PyCharm และในไม่ช้าก็จะเริ่มต้นอีกครั้งเมื่อเริ่มต้นใหม่ ความคิดใด ๆ ? หน่วยความจำประมาณ 200MB (จาก 725) ฉันใช้ OS X 10.11.3, PyCharm build # PY-145.844 นี่เป็นปัญหาใหญ่สำหรับฉันเนื่องจากฉันอาศัยอยู่ในสถานที่ที่มีการตัดไฟ
คริส


2
"ทุกปัญหาด้านประสิทธิภาพของ PyCharm ไม่เหมือนใคร" กล่าวอีกนัยหนึ่ง PyCharm ไม่สามารถแก้ไขได้ :-( ในทางตรงกันข้ามปัญหาทั่วไปที่ไม่ซ้ำกันดูเหมือนจะเป็นโฟลเดอร์ข้อมูลขนาดใหญ่ในโครงการที่ควรแยกออกจากการตรวจสอบ
jolvi

169

1. เปลี่ยนระดับการตรวจสอบ

เวอร์ชัน PyCharm ปัจจุบันช่วยให้คุณสามารถเปลี่ยนประเภทของการวิเคราะห์โค้ดแบบคงที่ที่ดำเนินการได้และยังมีคุณสมบัติการประหยัดพลังงาน / CPU (คลิกที่ไอคอนที่ด้านล่างขวาถัดจากล็อค):

ใส่คำอธิบายภาพที่นี่

2. เปลี่ยนไดเร็กทอรีที่จัดทำดัชนี
ไม่รวมไดเร็กทอรีจากการถูกจัดทำดัชนีซึ่งกำหนดไว้ในเส้นทางโครงการ แต่ไม่จำเป็นต้องค้นหาและจัดทำดัชนีจริง กดและการค้นหาสำหรับALT+CTRL+Sproject

3. ทำหน่วยความจำกวาด
มีคุณสมบัติที่น่าสนใจอีกอย่างคือ

ไปสู่การตั้งค่า (File / การตั้งค่า) และค้นหาหน่วยความจำ ในIDE Settings>Appearance-> Show memory indicatorเห็บ แถบความจำจะแสดงที่มุมล่างขวา (ดูภาพด้านล่าง) คลิกที่แถบนี้เพื่อเรียกเก็บขยะ / กวาดหน่วยความจำ

ใส่คำอธิบายภาพที่นี่


1
แก้ไขปัญหาของฉัน มันใช้ CPU มากกว่า 100% ไม่อีกแล้ว. :)
Kashyap

6
สิ่งเหล่านี้ไม่ควรทำงานโดยอัตโนมัตินาน ๆ ครั้งหรือไม่?
Berry Tsakala

16
ctrl + alt + s -> การตั้งค่า
mateuszb

2
จุดที่ 2 ประหยัดเวลาของฉัน!
Wok

2
ฉันจะปิดการใช้งานปลั๊กอินที่คุณไม่ได้ใช้ด้วย เลื่อนสองครั้งและค้นหา "ปลั๊กอิน" และยกเลิกการเลือกสิ่งที่คุณไม่ต้องการทั้งหมด
Steve Rossiter

11

Lorenz Lo Sauer มีคำถามที่ดีสำหรับเรื่องนี้อยู่แล้ว แต่ถ้าคุณต้องการแก้ไขปัญหานี้ผ่าน Pycharm Tuning (โดยไม่ต้องปิดการตรวจสอบโค้ด Pycharm) คุณสามารถปรับขนาดฮีปได้ตามต้องการ เนื่องจากฉันชอบใช้โซลูชัน Heap Size ที่เพิ่มขึ้นสำหรับ Pycharm Application ที่ทำงานช้า

คุณสามารถปรับขนาดฮีปได้โดยแก้ไขไฟล์ pycharm.exe.vmoptions และ pycharm64.exe.vmoptions สำหรับแอปพลิเคชัน 64 บิต จากนั้นแก้ไขค่า -Xmx และ -Xms

ดังนั้นฉันจึงจัดสรร 2048m สำหรับค่า xmx และ xms (ซึ่งก็คือ 2GB) สำหรับขนาด Pycharm Heap ของฉัน นี่คือการกำหนดค่าของฉัน ฉันมีหน่วยความจำ 8GB ดังนั้นฉันจึงตั้งค่าด้วยการตั้งค่านี้:

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

บันทึกการตั้งค่าและรีสตาร์ท IDE และฉันเปิดใช้งาน "แสดงตัวบ่งชี้หน่วยความจำ" ในการตั้งค่า -> ลักษณะที่ปรากฏและพฤติกรรม -> ลักษณะที่ปรากฏ เพื่อดูการใช้งานจริง:

Pycharm ช้าพิมพ์ช้าเพิ่มขนาด Pycharm Heap

และ Pycharm นั้นรวดเร็วและทำงานได้ดีในขณะนี้

อ้างอิง: https://www.jetbrains.com/help/pycharm/2017.1/tuning-pycharm.html#d176794e266


1
สมบูรณ์แบบ :) การรีสตาร์ท IDE ควรกล่าวถึง
Appyx

1
นี่คือคำตอบที่ดีที่สุด (ดูคำตอบของ JMJ ด้านล่างซึ่งให้วิธีง่ายๆในการแก้ไข) ฉันคิดว่าหน่วยความจำเริ่มต้นของ PyCharm สูงสุด 2GB นั้นค่อนข้างต่ำสำหรับผู้ใช้หลายคน
Stephen

7

ในกรณีของฉันปัญหาคือโฟลเดอร์ในไดเร็กทอรีโปรเจ็กต์ที่มีไฟล์ 300k + รวมเป็น 11Gb นี่เป็นเพียงโฟลเดอร์ชั่วคราวที่มีรูปภาพจากผลการคำนวณบางอย่าง หลังจากย้ายโฟลเดอร์นี้ออกจากโครงสร้างโครงการความช้าก็หายไป ฉันหวังว่านี่จะช่วยใครบางคนได้โปรดตรวจสอบโครงสร้างโครงการของคุณเพื่อดูว่ามีอะไรที่ไม่จำเป็นหรือไม่


3
นี้! หากคุณต้องการเก็บโฟลเดอร์ไว้ใน Project Directory ให้แยกโฟลเดอร์ออกจากการจัดทำดัชนีโดย: คลิกขวาที่โฟลเดอร์ที่คุณต้องการยกเว้น "ทำเครื่องหมายไดเรกทอรีเป็น" -> "ไม่รวม"
dtadres เมื่อ

6

มันง่ายมากโดยการเปลี่ยนขนาดฮีปตามที่กล่าวไว้ ง่ายๆเพียงไปที่ Pycharm HELP -> แก้ไขตัวเลือก VM ที่กำหนดเอง ... และเปลี่ยนเป็น:

-Xms2048m
-Xmx2048m

4

เกี่ยวกับปัญหาการค้างเราพบว่าสิ่งนี้เกิดขึ้นเมื่อประมวลผลไฟล์ CSV ที่มีบรรทัดที่ยาวมากอย่างน้อยหนึ่งบรรทัด

ในการทำซ้ำ:

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

อย่างไรก็ตามดูเหมือนว่าจะได้รับการแก้ไขแล้วใน PyCharm 4.5.4ดังนั้นหากคุณประสบปัญหานี้ให้ลองอัปเดต PyCharm ของคุณ


2

ฉันพบวิธีแก้ปัญหานี้ซึ่งใช้งานได้ดีบน Windows และต้องการแบ่งปัน

วิธีแก้ไขที่ใช้ไม่ได้ผล: ฉันมี RAM 16GB และยังคงมีความล่าช้าอย่างมาก PyCharm ใช้ RAM น้อยกว่า 1GB สำหรับฉันนั่นไม่ใช่ปัญหา การปิดการตรวจสอบไม่ได้ช่วยเลยและฉันก็ไม่มีปลั๊กอินพิเศษที่จำได้ ฉันยังลองเล่นกับความสัมพันธ์ของ CPU สำหรับกระบวนการซึ่งใช้งานได้สั้น ๆ แต่ไม่ได้ผลจริงๆ

อะไรทำงานได้สวยงามเกือบสมบูรณ์แบบ:

  1. ตั้งค่าลำดับความสำคัญ CPU ของ PyCharm เป็นสูงกว่าปกติ
  2. ตั้งค่าลำดับความสำคัญของ CPU สำหรับกระบวนการ Python เป็นต่ำกว่าปกติ

คุณสามารถทำได้ด้วยตนเอง แต่ขอแนะนำให้ใช้โปรแกรมที่จะรักษาการตั้งค่าไว้ระหว่างการรีสตาร์ทและสำหรับหลาย ๆ ฉันใช้ Process Hacker: คลิกขวาที่กระบวนการ -> Priority -> Set the priority จากนั้นคลิกขวาอีกครั้ง -> Process -> และเลือก "Save for pycharm64.exe" และในทำนองเดียวกันสำหรับ python "Save for python.exe" สุดท้ายใน Process Hacker ให้ไปที่ Options และเลือก "Start when I log on" สิ่งนี้จะทำให้ไฟล์ปฏิบัติการ Pycharm และ python ทั้งหมดได้รับลำดับความสำคัญของ CPU เหล่านี้แม้ว่าจะรีสตาร์ทโปรแกรมและ / หรือ Windows ก็ตามและไม่ว่าคุณจะเปิดอินสแตนซ์ python กี่ตัวก็ตาม

โดยทั่วไปความล่าช้าของ PyCharm ส่วนใหญ่อาจเกิดจากความขัดแย้งกับโปรแกรมอื่น ๆ ลองคิดดู: ใช่ PyCharm ต้องการ CPU จำนวนมาก แต่นักพัฒนา PyCharm ไม่ได้โง่ อย่างน้อยพวกเขาอาจมั่นใจได้ว่ามันสามารถทำงานได้โดยไม่เกิดความล่าช้าบนแกนว่าง แต่ตอนนี้คุณเปิด Chrome และแท็บ 30 แท็บ, Fiddler, โปรแกรม FTP, iTunes, Word, Slack และอื่น ๆ และพวกเขาทั้งหมดแข่งขันกับ PyCharm ในระดับความสำคัญของ CPU เดียวกัน เมื่อใดก็ตามที่ผลรวมของโปรแกรมทั้งหมด> 100% บนคอร์คุณจะเห็นความล่าช้า การเปลี่ยนไปใช้ลำดับความสำคัญสูงกว่าปกติทำให้ PyCharm มีบางสิ่งที่ใกล้เคียงกับคอร์เปล่าที่อาจถูกทดสอบ

สำหรับ Below Normal บน python.exe โดยพื้นฐานแล้วคุณไม่ต้องการให้คอมพิวเตอร์ของคุณช้าลงด้วยการพัฒนาของคุณเอง โปรแกรมหลามส่วนใหญ่เป็นโปรแกรม "แบทช์" เป็นหลักและคุณอาจไม่สังเกตเห็นเวลาที่ใช้ในการรัน ฉันไม่แนะนำสิ่งนี้หากคุณกำลังพัฒนาโปรแกรมโต้ตอบแบบกราฟิก


ทั้งหมดนี้อาจเป็นปัญหาน้อยกว่ากับคอมพิวเตอร์แบบฟิสิคัลคอร์ 4 คอร์ (8 โลจิคัลคอร์) ในกรณีของฉันฉันติดอยู่กับ 2 คอร์ทางกายภาพ (4 ตรรกะ) ดังนั้นการจัดการกระบวนการที่ดำเนินการพัฒนาท้องถิ่นจึงสำคัญกว่า
Stephen

3
คำเตือน : อย่าสูงกว่าปกติ หากคุณทำเช่นนี้คุณจะแข่งขันกับกระบวนการของ Windows และอาจทำให้เกิดความเสียหายกับคอมพิวเตอร์ของคุณ และคุณจะไม่ทำให้เร็วขึ้นมากหากเลย
Stephen

0

ในกรณีของฉันมันช้ามากและฉันจำเป็นต้องเปลี่ยนการตั้งค่าการตรวจสอบฉันลองทุกอย่างสิ่งเดียวที่ได้ผลคือจากเวอร์ชัน 2018.2 เป็น 2016.2 บางครั้งก็ดีกว่าที่จะอัปเดตบางอย่างเบื้องหลัง ...


เพิ่ม deatils เพิ่มเติมที่นี่
Mathews Sunny
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.