กระบวนการ icdd ใช้หน่วยความจำจำนวนมากบน macOS


13

ในช่วงสัปดาห์ที่ผ่านมากระบวนการ 'icdd' เริ่มต้นเป็นครั้งคราวและเมื่อใดจะใช้ RAM จำนวนมาก (สูงกว่า 7 GB) เมื่อเกิดเหตุการณ์นี้ขึ้น MacBook Pro ของฉันจะไม่สามารถใช้งานได้จนกว่าฉันจะสามารถเปิดการตรวจสอบกิจกรรมและบังคับให้ฆ่ากระบวนการ

ฉันได้แนบภาพหน้าจอของตัวตรวจสอบกิจกรรมที่แสดง icdd โดยใช้ RAM มากกว่า 7GB และทำให้ความดันหน่วยความจำพุ่งสูงขึ้น

ป้อนคำอธิบายรูปภาพที่นี่

ไม่มีใครรู้ว่ากระบวนการนี้คืออะไรหรือฉันสามารถป้องกันไม่ให้ปัญหานี้เกิดขึ้นทุก ๆ 30 นาทีหรือไม่?


1
คุณไม่ใช่คนแรกที่มีปัญหานี้ ดูว่าคำตอบนี้ช่วยได้หรือไม่: superuser.com/questions/748933/…
NoahL

1
icdd เกี่ยวข้องกับ Image Capture.app/service คุณมีอุปกรณ์ใด ๆ เช่นสแกนเนอร์เครื่องพิมพ์สแกนเนอร์หรือกล้องหรือไม่?
klanomath

นอกจากนี้ - ถ้าคุณออกจากระบบแล้วกลับมาใช้ใหม่ 7.24 ใช้อย่างไร (แอพ 1.08, 1.75 สาย. 4.41 บีบอัด) เปลี่ยนแปลงอย่างไร? อาจเป็นการรั่วไหลของหน่วยความจำง่าย ๆ ที่ล็อกเอาต์และล้าง หากไม่ชัดเจนฉันจะลองปิดใช้งานเครื่องสแกนไวรัสและรีบูตเครื่องและดูว่าหน่วยความจำปีนขึ้นอย่างรวดเร็วหรือไม่
bmike

วิธีการแก้ไขนั้นไม่สามารถใช้ได้กับปัญหาของฉัน @ klanomath ฉันไม่มีอุปกรณ์ภายนอกต่ออยู่กับ MacBook
ซัค

@Zach lcdd ถูกควบคุมโดยตัวแทนเปิดตัว มันมีคีย์ "Enable pressure exit" ซึ่งถูกปิดใช้งานโดยค่าเริ่มต้น คุณสามารถเปิดใช้งานได้ชั่วคราว (= kill lcdd หากความดันหน่วยความจำสูงถึง) และตรวจสอบผลลัพธ์ เช่นเดียวกับ bmike ที่กล่าวถึงเหตุผลที่แท้จริงอาจเป็นเพราะหน่วยความจำรั่วแม้ว่า ...
klanomath

คำตอบ:


6

ฉันทำงานกับที่ปรึกษาด้านเทคนิคระดับสูงของ Apple ในเรื่องนี้มานานกว่าหนึ่งปีและทำงานร่วมกับที่ปรึกษาอาวุโสคนหนึ่งก่อนหน้านั้น เราได้ทำการ "data capture" เพื่อส่งให้วิศวกรของ Apple หลายครั้งและทำการบันทึกหน้าจอหลายครั้งเพื่อแสดงให้เห็นถึงสิ่งที่เกิดขึ้นใน Activity Monitor, Image Capture และท้ายที่สุดในรายการที่ icdd รักษาไว้ที่ / Users / ชื่อผู้ใช้ / Library / Application Support / icdd / deviceInfoCache.plist (โดยแสดงเป็น Xcode)

ณ จุดนี้นี่คือการประมาณการที่ดีที่สุดของฉันในสิ่งที่เกิดขึ้น:

กระบวนการ icdd (ฐานข้อมูลอุปกรณ์จับภาพ) จะเห็นเครื่องสแกนเข้ามาในเครือข่ายที่ไม่ว่าง มันพยายามที่จะเก็บรายการของไฟล์ไอคอนของพวกเขาในตารางแฮชซึ่งมันยังเขียนไปยังไฟล์ deviceInfoCache.plist ดังกล่าวข้างต้น ใช่ - มันฟังดูบ้า - มันกำลังเก็บการอ้างอิงไปยังไฟล์ไอคอนของเครื่องสแกน แต่ถึงอย่างนั้น crazier ก็คือรายการบางส่วนในไฟล์นี้เกือบทั้งหมดชี้ไปที่ไฟล์. icns ที่ไม่มีอยู่ ในหลาย ๆ ระบบที่ฉันได้ดูมีรายการหลายพันรายการในไฟล์ แต่มีไฟล์. icns เพียงไม่กี่รายการที่มีอยู่ในหนึ่งในเครื่องและไม่มีรายการอื่น ๆ ฉันเชื่อว่าเมื่อไฟล์นี้มีขนาดใหญ่ icdd ใช้เวลาพยายามตรวจสอบการมีอยู่ของรายการในไฟล์. plist และแก้ไขไฟล์ ฉันเชื่อว่านี่เป็นสองเหตุผล อย่างแรกคือเมื่อฉันนำแล็ปท็อปกลับบ้าน บางครั้งกระบวนการ icdd ยังคงทำงานที่ประมาณ 100% ของ CPU แต่เมื่อฉันฆ่ามันกลับไปที่ "ปกติ" ประมาณ 0.0 ถึง 0.1% ทุกครั้ง ดังนั้นฉันคิดว่าบางครั้งยังคงพยายามประมวลผลข้อมูลเกี่ยวกับรายการเมื่อฉันเปิดที่บ้าน แต่เมื่อฉันฆ่ามันในขณะที่เครือข่ายไม่ว่างมันมักจะกลับมาใกล้ 100% ทันที เมื่อจำนวนสแกนเนอร์ที่แสดงใน Image Capture ลดลง (ซึ่งมักจะทำ แต่จะขัดขวางเป็นระยะด้วยเหตุผลบางประการ) icdd ในที่สุดก็จะปักหลัก และประการที่สองการลบไฟล์ deviceInfoCache.plist ทำให้ icdd ทำงานในระยะเวลาอันสั้นพอสมควร - จนกว่าจำนวนรายการจะถูกสร้างขึ้นอีกครั้ง โปรดทราบว่า icdd เก็บรักษาสำเนาของรายการเหล่านี้ในหน่วยความจำดังนั้นหากคุณลบไฟล์ออกจากบัญชีผู้ใช้ icdd เพียงแค่เขียนมันใหม่ทันที และแน่นอนว่า, คุณไม่สามารถฆ่า icdd ได้นานพอที่จะลบไฟล์ดังนั้นคุณต้องออกจากระบบและลบไฟล์จากบัญชีผู้ดูแลระบบอื่นผ่านเทอร์มินัล icdd จะสร้างไฟล์ขึ้นมาใหม่เมื่อคุณกลับเข้าสู่ระบบ แต่มันจะมีจำนวนรายการที่ค่อนข้างน้อยและทำงานได้ดีชั่วครู่หนึ่ง

เพื่อที่จะให้ความคิดเกี่ยวกับเครื่องชั่งน้ำหนักวิศวกรของ Apple ตกใจที่เห็นว่าฉันมีสแกนเนอร์ถึง 85 เครื่องที่แสดงใน Image Capture อย่างไรก็ตามบ่อยครั้งที่จำนวนนี้จะตั้งหลักแหล่งประมาณ 6 ในระบบเดียวกันและในช่วงเวลาเดียวกัน ไฟล์ deviceInfoCache.plist มีรายการระหว่าง 8,000 ถึง 12,600 รายการในระบบที่ฉันดูแล้วว่ามีปัญหาของ icdd - ฉันเป็นคนที่มีขนาดใหญ่กว่าและฉันเชื่อว่าสิ่งนี้ได้ดำเนินการจากเครื่องเก่าเนื่องจากฉันมีปัญหา icdd นับจากเวลาที่ฉันตั้งค่า MacBook Pro ใหม่ในเดือนธันวาคม 2559 เมื่อฉันลบไฟล์ plist จำนวนรายการเริ่มต้นในไฟล์ที่สร้างขึ้นใหม่คือ 44 และอีกสองสามวันการใช้งาน icdd cpu จะอยู่ใกล้กับ 0.0% อย่างไรก็ตามหลังจากนั้นประมาณ 5 วันในมหาวิทยาลัยไฟล์ plist ของฉันมี 964 รายการ และการใช้งาน cdd icdd จะเด้งเป็นประจำระหว่าง 30% ถึง 90% ในเครือข่ายไม่ว่างที่มหาวิทยาลัย เมื่อฉันอยู่ที่บ้านไฟล์ Plist จะเพิ่มจำนวนรายการโดยเพิ่มเป็น 0 ถึง 2 ตลอดระยะเวลาหนึ่งวัน จาก 12,600 รายการในไฟล์ plist ก่อนหน้าของฉันมี 2 รายการเท่านั้นที่มี "deviceName" ส่วนที่เหลือมี "iconPathLocation" ซึ่งทั้งหมดชี้ไปที่ไฟล์. icns ที่ไม่มีอยู่ ด้วย Plist ปัจจุบันยังคงมี 2 รายการที่มี "DeviceName" และที่เหลือมี "iconPathLocation" ที่ไม่มีอยู่ ทั้งหมดนี้ชี้ไปที่ไฟล์. icns ที่ไม่มีอยู่ ด้วย Plist ปัจจุบันยังคงมี 2 รายการที่มี "DeviceName" และที่เหลือมี "iconPathLocation" ที่ไม่มีอยู่ ทั้งหมดนี้ชี้ไปที่ไฟล์. icns ที่ไม่มีอยู่ ด้วย Plist ปัจจุบันยังคงมี 2 รายการที่มี "DeviceName" และที่เหลือมี "iconPathLocation" ที่ไม่มีอยู่

ดังนั้นทางออกระยะสั้นคือการลบไฟล์ plist จากบัญชีผู้ดูแลระบบอื่นผ่านเทอร์มินัลในขณะที่ออกจากระบบบัญชีผู้ใช้ของคุณ หวังว่าขณะนี้ข้อมูลนี้ได้รับการจัดหาให้แก่วิศวกรของ Apple จากที่ปรึกษาอาวุโสของฉันแล้ววิศวกรของ Apple จะมีข้อมูลเพียงพอที่จะหาสาเหตุที่ icdd แสดงวิธีนี้และแก้ไขปัญหา แน่นอนว่าอาจช่วยได้ถ้าคุณสามารถยืนยันโซลูชันระยะสั้นของฉันและรายงานสิ่งที่คุณพบกับ Apple ต่อไป


รายการที่ดีซึ่งจะช่วยให้เข้าใจถึงวิธีการทำงานของ icdd แต่มันมีไว้เพื่ออะไร? ไอคอนเหล่านี้ (อย่างน้อยไอคอนที่มีอยู่) จะปรากฏที่ไหน ฟังก์ชันใดที่ icdd นี้รับผิดชอบ และเมื่อคุณลบไฟล์. plist ฟังก์ชันใดที่คุณสูญเสีย นอกจากนี้ในกรณีของฉันมีผู้ใช้ 5 คนบน Mac เครื่องเดียวกันและไฟล์ icdd .plist ไม่ยอมรับ แต่นั่นทำให้ icdd เกิดความผิดพลาดเป็นครั้งคราวและไม่เก็บขยะและหมูบน CPU
Motti Shneor

@Motti Shneor deviceInfoCache.plist จะมีอุปกรณ์ที่แท้จริงปรากฏอยู่ในรายการเป็นครั้งคราวและฉันคิดว่านี่เป็นวัตถุประสงค์ที่ตั้งใจไว้ ฉันคิดว่าเป็นข้อผิดพลาดที่ทำให้ติดตามไอคอนไฟล์รูปภาพซึ่งส่วนใหญ่ไม่มีอยู่ นี่คือการคาดเดาเริ่มต้นของฉัน แต่ฉันพูดแบบนี้ด้วยความมั่นใจมากขึ้นในขณะนี้เพราะดูที่เวอร์ชันปัจจุบันของฉันของ plist นี้มันมีหนึ่งรายการที่แน่นอนซึ่งสำหรับอุปกรณ์จริง ดังนั้นฉันคิดว่า Apple แก้ไขสิ่งนี้ในระบบปฏิบัติการบางเวอร์ชัน (ฉันสงสัยว่าใน Catalina)
datatoolbox

@Motti Shneor ในการลบ plist ฉันไม่เคยสังเกตเห็นการเปลี่ยนแปลงใด ๆ ในการทำงาน - ระบบปฏิบัติการเพิ่งสร้างไฟล์ใหม่ตามที่ต้องการซึ่งดูเหมือนจะใช้เวลาไม่นาน ผู้ใช้ทุกคนมีการวางแผนของตนเองสำหรับเรื่องนี้และโดยเจตนาดังนั้นหากผู้ใช้รายหนึ่งใช้สแกนเนอร์และผู้ใช้รายอื่นไม่เห็นด้วยฉันคาดว่าผู้วางแผนจะสะท้อนความแตกต่างนี้ ดังนั้นฉันสงสัยว่าผู้ใช้รายอื่นจะมีผลกระทบกับการโต้ตอบ
datatoolbox

3

ฉันได้รับการจัดการกับปัญหานี้มาระยะหนึ่งแล้วและได้รับการตรวจสอบทุกที่! มันน่าผิดหวัง ... ในที่สุดฉันก็ได้พบลิงค์ที่ฉันสามารถหยุดความโง่เขลานี้ได้ ฉันไม่แน่ใจว่านี่เป็นต้นเหตุของปัญหาหรือไม่ แต่สามารถหยุดได้ นี่คือขั้นตอน:

1) ปิดใช้งาน SIP ( ลิงก์ )

2) พิมพ์คำสั่งต่อไปนี้:

cd / แอพพลิเคชั่น

sudo mv Image \ Capture.app/ ปิดการใช้งาน \ Image \ Capture.app/

cd / ระบบ / Library / Image \ Capture / Support /

sudo mv icdd icdd-disable

3) รีบูต

4) เปิดใช้งาน SIP หากคุณสนใจ

ลิงค์เดิม: https://havecamerawilltravel.com/photographer/prevent-photos-app-mac-osx

หวังว่ามันจะช่วย


0

ฉันดิ้นรนกับปัญหานี้เช่นกัน ไม่พบคำตอบออนไลน์และไม่ต้องการยุ่งกับ terminal ฉันเรียก Apple Support ในขั้นต้นพวกเขาคิดว่า HD ของฉันเสียหาย (เป็น - ที่ได้รับการแก้ไขแล้ว แต่ไม่ได้แก้ไขปัญหา) ปัญหายังคงอยู่หลังจากเพิ่มแรมของฉัน ได้รับคำแนะนำจากความคิดเห็นทางอินเทอร์เน็ตเกี่ยวกับการค้นหาสแกนเนอร์เครือข่ายฉันสังเกตว่า ICDD จะบ้าเมื่อเปิดใช้งาน Wi-Fi เท่านั้น หากฉันตัดการเชื่อมต่อจาก Wi-Fi และออกจาก ICDD มันจะไม่เริ่มต้นใหม่และปีนขึ้นไปในการใช้งาน RAM หรือ CPU (จนกว่าจะเปิดใช้งาน Wi-Fi)

ฉันโทรหาฝ่ายสนับสนุนของ Apple อีกครั้งซึ่งดูเหมือนจะแก้ไขปัญหาได้ด้วยการรีเซ็ต SMC และ NVRAM ตอนนี้ ICDD ทำงานที่ระดับต่ำ (10-20 MB) แทนที่จะใช้ RAM 10+ GB ฉันได้เพิ่มลิงก์ด้านล่างเพื่อทำสิ่งเหล่านั้น แต่ฉันขอแนะนำให้โทรติดต่อฝ่ายสนับสนุน Apple สำหรับปัญหาเฉพาะของคุณ

คำอธิบายของพวกเขาสำหรับสาเหตุที่เกิดขึ้นเกี่ยวข้องกับ RAM ของฉันถูกอุดตันหรือเต็มไปด้วยแคชอินเทอร์เน็ตเป็นต้นทำไมตอนนี้มันปรากฏชัดเจนและเกี่ยวข้องกับเซียร่าฉันไม่สามารถพูดได้

ฉันหวังว่านี่จะช่วยให้บางคน!

รีเซ็ต SMC: https://support.apple.com/th-th/ht201295

รีเซ็ต NVRAM: https://support.apple.com/th-th/ht204063

10-15 นาทีแก้ไข

รายละเอียดของฉัน:

  • ต้นปี 2011 13 "MacBook Pro
  • ซัมซุง SSD 500 GB (อัปเกรด ~ 1.5 ปีที่แล้ว)
  • 8 GB RAM (อัปเกรดแล้ว ~ 1 เดือนที่ผ่านมา)
  • macOS Sierra 10.12.3 (สูงถึง
  • Parallels 10 พร้อมซอฟต์แวร์ Windows 10 สำหรับ SAS

0

แม้ว่าคำตอบข้างต้นจะให้ข้อมูลทางเทคนิคที่ดีกว่า แต่ฉันต้องการเพิ่มบันทึกทั่วไป

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

โดยปกติการรีเซ็ตซอฟต์แวร์ดังกล่าวให้กลับสู่สถานะดั้งเดิม (เช่นโดยการลบแคชและตั้งค่าไฟล์. plists หรือแม้กระทั่งการรีเซ็ตค่าเริ่มต้นของผู้ใช้) จะช่วยให้ปัญหาง่ายขึ้นในบางครั้ง

อีกวิธีหนึ่งคือการรีเซ็ตระบบย่อยที่เกี่ยวข้องกับระบบปฏิบัติการ ตัวอย่างเช่นในกรณีนี้คลิกขวาในแผงการตั้งค่าระบบเครื่องพิมพ์จะช่วยให้คุณ "รีเซ็ตระบบการพิมพ์" ซึ่งอาจจะล้างหัวของ icdd สักครู่ - แต่จะบังคับให้คุณตั้งค่าสภาพแวดล้อมการพิมพ์ของคุณอีกครั้ง

และแน่นอนว่าการเปิดรายการ RADR ใหม่ให้กับ Apple ในที่สุดอาจได้รับความสนใจไปยังระบบย่อยที่ผิดพลาด

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