เหตุใด Windows 7 x64 จึงทำงานเร็วกว่ารุ่น x86 บนพีซีของฉัน


11

เหตุใด Windows 7 x64 จึงทำงานเร็วกว่ารุ่น x86 บนพีซีของฉันแม้ว่าฉันจะใช้ x86 เป็นส่วนใหญ่อยู่ก็ตาม เกิดอะไรขึ้นกับฉันและฉันพลาดอะไรไป

สิ่งที่ฉันใช้ส่วนใหญ่คือ x86 (เช่น DAW เกมเครื่องเล่นสื่อ) อย่างไรก็ตามมีจำนวนมากที่เป็น x64 (แม้ว่า x86 ของพวกเขาจะทำงานได้ดี)

ฉันได้ลองใช้สิ่งเดียวกันในระบบเดียวกัน แต่มักจะพบว่า Windows 7 x64 ทำงานได้เร็วกว่า x86 เล็กน้อย ฉันช่างสังเกตมาก ฉันยังสังเกตเห็นภาพเคลื่อนไหวหน้าต่างที่น้อยที่สุด

ระบบ : Windows 7 Ultimate x64
CPU : Intel Core 2 Duo E7500 @ 2.93 GHz
RAM : 2 GB x 2 = 4 GB DDR2 @ 332 MHz
เมนบอร์ด : Intel D945GCNL
กราฟิก : ATI Radeon HD 4350 @ 1 GB
เสียงเฉพาะ: M-Audio FastTrack Pro
HDD : Samsung HD753LJ 733 GB และ Samsung HD160JJ 156 GB

อย่างที่คุณเห็นระบบของฉันเก่า


4
สำหรับผู้เริ่มต้น Windows 64 บิตจะใช้ RAM ที่จัดสรรไว้ทั้งหมดของคุณ

3
ทำไมคุณถึงสนใจว่ามันเร็วกว่า คุณควรจะดีใจที่มันเป็น
Matt H

@ Randolph ฉันได้รับมัน แต่สิ่งที่ส่งผลกระทบต่อสิ่ง x86? @ ไม่มีเลขฉันดีใจแน่นอน ฉันแค่อยากรู้อยากเห็นมาก สำหรับชีวิตของฉันฉันไม่สามารถเข้าใจได้ว่าทำไมมันถึงเกิดขึ้น
แจสเปอร์

คุณมักจะจินตนาการถึงเอฟเฟกต์นี้เพราะคุณคาดหวังที่จะเห็นมัน ความเร็วแตกต่างจากพีซีไปยังพีซีและแม้แต่ในพีซีเดียวกันด้วยปัจจัยหลายประการที่สำคัญกว่าขั้นตอนจาก 32 ถึง 64 บิต พีซีที่ติดตั้งใหม่จะดูเร็วขึ้นหมดจดโดยการติดตั้ง cruft น้อยลง
JamesRyan

คำตอบ:


8

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

ความแตกต่างของชุดคำสั่ง CPU

ตามที่อธิบายโดยJoel Coehoornสำหรับรหัสเนทีฟ x64 จะมีชุดรีจิสเตอร์ขนาดใหญ่ขึ้นรวมทั้งคำแนะนำเพิ่มเติม (เช่น x64 ซีพียูทั้งหมดรับประกันว่าจะใช้คำสั่ง SSE และ SSE2) ซึ่งหมายความว่าระบบปฏิบัติการ x64 และไดรเวอร์ของพื้นเมืองนั้นมีประสิทธิภาพมากกว่า

การใช้ RAM ที่ดีขึ้น

64b สามารถใช้งานได้เต็ม 4 GB (และยิ่งกว่านั้นเมื่อมี) นอกจากนี้บาง OS ข้อ จำกัด ภายใน (เพจ / สระว่ายน้ำที่ไม่ใช่เพจขนาดแคชสูงสุด) จะเพิ่มขึ้นด้วย 64b OS เป็นผลให้การเพจหน่วยความจำและการแคชไฟล์อาจมีประสิทธิภาพมากกว่า

ตำแหน่งฮาร์ดดิสก์ที่แตกต่างกัน

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

สถานะระบบปฏิบัติการที่แตกต่างกัน

เมื่อคุณมีสอง OS แต่ละระบบอาจแตกต่างกันเล็กน้อย หนึ่งในนั้นอาจมีการแยกส่วนมากกว่าที่อื่น ๆ หนึ่งในนั้นอาจมีรีจิสทรีทำความสะอาดบิตหรือบริการที่ติดตั้งน้อยกว่าหรือโปรแกรมพื้นหลังน้อยกว่าอีกหนึ่ง

ไดรเวอร์ที่ดีขึ้น

ความเป็นไปได้อีกอย่างหนึ่งคือไดรเวอร์ x64 อาจมีคุณภาพที่ดีกว่า x86 ไม่ใช่เพราะความแตกต่างทางสถาปัตยกรรมพื้นฐานบางอย่าง แต่เพียงเพราะผู้จำหน่ายของพวกเขาพยายามเพิ่มประสิทธิภาพและปรับแต่งอย่างละเอียดมากขึ้น

ที่อยู่ 64b

ฉันเพิ่มสิ่งนี้เพื่อความสมบูรณ์เท่านั้นเพราะส่วนใหญ่ของแอปพลิเคชันประจำวันส่วนใหญ่ความแตกต่างนี้ไม่มีบทบาทและแน่นอนไม่เกี่ยวข้องกับสิ่งที่แจสเปอร์อธิบายในคำถามของเขา

หากคุณมีแอปพลิเคชั่นที่ประมวลผลข้อมูลจำนวนมาก (เช่นทำงานใน Photoshop ด้วยภาพขนาดใหญ่) การรันเวอร์ชัน 64b สามารถสร้างความแตกต่างได้อย่างมากหากคุณติดตั้ง RAM ขนาด 4 GB ขึ้นไป

"เร็ว" หมายถึงอะไรจริง ๆ ?

นี่คือรายการจากความคิดเห็นในคำตอบอื่น ๆอะไรคือ "สิ่งที่เร็วกว่า" แจสเปอร์สามารถเห็นได้:

  • หน้าต่างเคลื่อนไหวนุ่มนวล

ยากที่จะอธิบาย. ภาพเคลื่อนไหว Windows นั้นทำโดย GPU ใน Windows 7 และ GPU นั้นเหมือนกัน โหลดของ CPU นั้นเล็กน้อย (ฉันคิดว่าคุณกำลังใช้เดสก์ท็อป Aero)

  • บางโปรแกรมแก้ไขภาพวาดได้เร็วขึ้น (ทั้ง x86 และ x64)
  • วิดีโอ HD ที่ใช้งานราบรื่นกว่า (บน MPC-HC x64) และประสบการณ์โดยรวมที่มีเสถียรภาพยิ่งขึ้น

อาจเป็นไดรเวอร์หรือไดรเวอร์ที่ปรับจูนได้ดีกว่าโดยใช้ประโยชน์จาก x64,.

  • ไฟล์ที่ถูกคัดลอกเร็วกว่ามาก

อาจเกิดจากพาร์ติชันที่เร็วขึ้น (ไม่เกี่ยวข้องกับ OS เลย) หรือโดยการจัดการแคชที่ดีขึ้นใน x64 OS

  • เกมดังกล่าวไม่แสดงการเปลี่ยนแปลงใด ๆ

เข้าใจได้ ประสิทธิภาพของเกมนั้นถูกกำหนดโดย CPU และ GPU ในกรณีที่ CPU มีข้อ จำกัด รหัสการ จำกัด คือตัวเกมเองซึ่งเป็นรหัส x86 เดียวกันกับการเชื่อมต่อกับ x64 OS เพียงเล็กน้อย ประสิทธิภาพของ CPU จึงเหมือนกัน GPU เหมือนกัน โอเวอร์เฮดของไดรเวอร์และระบบปฏิบัติการในเกมที่ตั้งโปรแกรมไว้ต่ำดังนั้นไดรเวอร์หรือความแตกต่างของ OS จะไม่แสดงที่นี่


ฉันแสดงความคิดเห็นกับประสบการณ์ของฉันในคำตอบของ GrandmasterB ประสบการณ์จะเกิดขึ้นพร้อมกัน (จำนวน) สิ่งที่ติดตั้ง (โดยเฉพาะฟังก์ชั่นของ Windows) บนเครื่องเดียวกันสองครั้งได้อย่างไร? Windows 7 ได้รับการปรับให้เหมาะสมยิ่งขึ้นสำหรับการเป็น x64 หรือไม่ ผู้จำหน่ายฮาร์ดแวร์ระมัดระวังเกี่ยวกับไดรเวอร์ x64 หรือไม่ หากทั้งโปรแกรมและเครื่องยังคงเหมือนเดิมโดยมีความแตกต่างที่สอดคล้องกันดูเหมือนว่าบางสิ่งจะได้รับการปรับให้เหมาะสมที่สุดสำหรับวิธีหนึ่งมากกว่าอีกวิธีหนึ่ง
แจสเปอร์

ฉันไม่ได้อ้างว่าประสบการณ์นั้นบังเอิญในกรณีของคุณโดยเฉพาะ อย่างไรก็ตามสำหรับคำอธิบายที่สมบูรณ์ควรพิจารณาความเป็นไปได้ดังกล่าวในกรณีทั่วไป เช่นพาร์ติชั่นด้านใน / ด้านนอกเป็นสิ่งที่สามารถสร้างความแตกต่างอย่างมีนัยสำคัญต่อเวลาในการโหลดและมันก็ไม่ได้เกี่ยวข้องกับระบบปฏิบัติการ 64b / 32b
Suma

ฉันต้องการเพิ่มข้อมูลเล็กน้อย ทุกครั้งที่ฉันติดตั้ง 7 (ในกรณีนี้คือการติดตั้ง x86 สองครั้งแรกและการติดตั้ง x64 สองหลัง) ฉันได้ติดตั้งใหม่บนไดรฟ์เดียวกันเสมอลบการติดตั้งก่อนหน้าทั้งหมด ไม่มีรองเท้าบู๊ตคู่ใด ๆ ที่เกี่ยวข้อง ฮ่า ๆ. ใช่ฉันยังไม่ได้แตะไดรฟ์เลย
แจสเปอร์

เพิ่มเติม: ฉันกำลังใช้ Aero บนจอภาพ 1080p นอกจากนี้ฉันมักทำรูปแบบด่วนแทนรูปแบบเต็ม
แจสเปอร์

"ฉันเพิ่งติดตั้งใหม่บนไดรฟ์เดียวกันอย่างสมบูรณ์ลบการติดตั้งก่อนหน้านี้" ดีที่รู้กฎนี้ออกความเป็นไปได้ "นอกพาร์ทิชันเร็วขึ้น" เช่นเดียวกับความเป็นไปได้ของรัฐ OS
Suma

16

การย้ายจาก 32 เป็น 64 บิตไม่ได้เป็นการเปลี่ยนแปลงเพียงอย่างเดียวในสถาปัตยกรรม x64 x64 ยังเพิ่มการลงทะเบียน cpu เพิ่มเติมและคำสั่ง cpu ใหม่อีกด้วย ระบบปฏิบัติการที่รู้วิธีการใช้ประโยชน์จากสิ่งเหล่านี้จะทำให้ประสิทธิภาพการทำงานของฮาร์ดแวร์ในระดับเดียวกันลดลง โอ้และการได้รับ RAM 1GB ที่เคยใช้กับการ์ดแสดงผลของคุณก็ไม่ได้ทำให้เจ็บปวดเช่นกัน


ที่จริงแล้วใช้งานได้เพียง 3.25 GB จาก 4 GB แม้ใน x64 ฉันคาดหวังว่าสิ่งนี้จะได้รับการแก้ไขด้วยการอัปเกรดจาก x86 แต่ไม่ได้
แจสเปอร์

+1 สำหรับหน่วยความจำวิดีโอไม่ได้สังเกตว่าเขามีบัตร vid
Supercereal

3
@ แจสเปอร์: ไม่แน่ใจว่าฉันทำให้คุณถูกต้อง แต่หนึ่งในคอมพิวเตอร์ของฉันใช้ RAM 8GB ทั้งหมดที่ฉันติดตั้ง (Win 7 x64 Ultimate)
xbonez

นี่เป็นสิ่งเดียวที่ทำให้ฉันรู้สึกได้ สิ่งอื่น ๆ ทั้งหมดจะเหมือนกันเมื่อใช้งานระบบปฏิบัติการเดียวกันรุ่น 32b และ 64b บนระบบเดียวกัน มีความแตกต่างเพียงสองประการคือ 1) การลงทะเบียนและชุดคำสั่งที่ปรับปรุงแล้ว 2) การกำหนดพื้นที่ที่อยู่ 64b ช่วยให้สามารถระบุที่อยู่เต็ม 4 GB หรือ RAM และอื่น ๆ
Suma

ยังคงเพื่อประโยชน์ของความสมบูรณ์ส่วนที่เกี่ยวกับการ์ด 1 GB การซ่อน RAM 1 GB นั้นไม่เป็นความจริงอย่างแน่นอนเพราะทุกคนที่มี RAM ขนาด 4 GB, 32b OS และการ์ดดังกล่าวสามารถเป็นพยานได้อย่างง่ายดาย
Suma

7

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

ก่อนอื่นสถานการณ์กับหน่วยความจำวิดีโอ หน่วยความจำทั้งหมดของการ์ดวิดีโอไม่ได้ (อย่างน้อยปกติ) มองเห็นได้โดยตรงในพื้นที่ที่อยู่ของ CPU โดยปกติคุณจะมี "หน้าต่าง" ของหน่วยความจำวิดีโอประมาณ 128-256 เมกะไบต์ที่มองเห็นได้สำหรับ CPU GPU สามารถแมปส่วนต่าง ๆ ของหน่วยความจำของมันไปที่หน้าต่างนั้นดังนั้นโดยทั่วไปคุณสามารถเขียนหน่วยความจำ GPU ส่วนใหญ่จาก CPU ได้แต่คุณต้องบอก GPU ล่วงหน้าก่อนว่าจะเขียนถึงอะไรก่อน ตัวอย่างเช่นเมื่อคุณใช้ DirectX และคุณต้องการเขียนโดยตรงไปยังหน่วยความจำกราฟิกคุณสามารถทำได้ - แต่เมื่อต้องการทำคุณเริ่มต้นด้วยการโทรLockRectเพื่อรับ GPU เพื่อแมปหน่วยความจำที่เหมาะสมลงในหน้าต่าง (และเป็น ทันทีที่คุณทำเสร็จคุณก็โทรUnlockRectเพื่อให้สามารถแมปหน่วยความจำอื่นได้ตามต้องการ) อย่างน้อยในกรณีทั่วไปคุณสามารถปรับขนาดหน้าต่างวิดีโอในการตั้งค่า BIOS

ประการที่สองแม้ในโปรเซสเซอร์ x86 โหมด 32 บิตสนับสนุนสิ่งที่เรียกว่า Physical Address Extensions (PAE) ซึ่งอนุญาตให้ CPU ระบุที่อยู่มากกว่า 4 กิกะไบต์ ของหน่วยความจำ Microsoft รองรับ PAE ใน Windows บางรุ่น - แต่เป็น Windows Server Enterprise Edition ที่ค่อนข้างแพง นอกจากนี้โปรแกรมจะต้องเขียนโดยเฉพาะเพื่อใช้ AWE มีเพียงไม่กี่โปรแกรม (เช่น SQL Server Enterprise Edition) ที่เคยทำมา บรรทัดล่าง: เป็นไปได้ แต่ค่อนข้างหายาก

เท่าที่อ่าน 64 บิตต่อครั้งตัวประมวลผลสุดท้ายที่อ่านข้อมูลเพียง 32 บิตต่อครั้งคือ 486 เริ่มต้นด้วย Pentium ตัวประมวลผลทั้งหมดมีบัสข้อมูล 64 บิต โปรดทราบว่าแอดเดรสบัสไม่เหมือนกับดาต้าบัสดังนั้นการขยายไปยังบัสข้อมูลแบบ 64 บิตไม่อนุญาตให้ตัวประมวลผลทำงานกับหน่วยความจำเพิ่มเติม (แม้ว่าจะเป็นเช่นนั้น PAE ถูกเพิ่มใน Pentium Pro ดังนั้น ถูกเกือบพร้อมกันกับการขยายตัวไปยังบัสข้อมูล 64 บิต)

แม้ว่า Pentium จะสามารถอ่านข้อมูล 64 บิตในรอบสัญญาณนาฬิกาเดียว แต่ภายในนั้นส่วนใหญ่จะประมวลผลข้อมูล 32 บิตในแต่ละครั้ง บัสที่กว้างขึ้นส่วนใหญ่ช่วยชดเชยความเร็วที่แตกต่างระหว่าง CPU และหน่วยความจำหลัก คำสั่ง MMX ของ Pentium MMX รองรับการประมวลผลข้อมูลใน 64 บิต แต่มันค่อนข้างงุ่มง่ามที่จะใช้และ (โดยเฉพาะ) คอมไพเลอร์ส่วนใหญ่ไม่ได้สร้างรหัส MMX ดังนั้นคุณต้องเขียนภาษาแอสเซมบลีเพื่อใช้งาน . Pentium ยังรองรับการทำงานแบบ 64 บิต (และ 80 บิต) สำหรับตัวเลขจุดลอยตัว แต่ใช้สำหรับการเขียนโปรแกรมส่วนใหญ่เพียงเล็กน้อย (และโดยทั่วไปแล้วช้ากว่าการทำงานกับจำนวนเต็มอยู่แล้ว)

การออกแบบ x86-64 มีการลงทะเบียนวัตถุประสงค์ทั่วไปมากเป็นสองเท่าของการออกแบบแบบ 32 บิต x86 และการลงทะเบียนแต่ละรายการมีความกว้าง 64 บิต เมื่อ CPU ทำงานในโหมด 32 บิตจะสามารถใช้ได้เฉพาะเซ็ตย่อยของรีจิสเตอร์ที่มีอยู่ใน CPU 32 บิตเท่านั้น

กลับไปยังจุดลอยตัวในโหมด 32 บิตการคำนวณเลขทศนิยมจะทำโดยใช้ชุดคำสั่งที่ออกแบบมาสำหรับตัวประมวลผลร่วมทางคณิตศาสตร์ Intel 8087 สิ่งนี้ใช้แบบจำลองที่ทำให้ยากต่อการใช้ความสามารถของมันอย่างเต็มที่ Intel (และ AMD) ได้เพิ่ม "Streaming SIMD Extensions" หรือ SSE คอมไพเลอร์ 64 บิตส่วนใหญ่สร้างรหัสที่สามารถ / ใช้ SSE แทนการใช้จุดลอยตัวที่เข้ากันได้ 8087 "SIMD" ใน SSE ย่อมาจาก "คำสั่งเดียว, หลายข้อมูล" สิ่งนี้หมายความว่าหนึ่งคำสั่ง SSE สามารถดำเนินการสองจุดลอยตัวในข้อมูลสองชิ้นแยกกัน แม้ว่านี่จะไม่จำเป็นต้องเพิ่มความเร็วเป็นสองเท่า แต่โดยทั่วไปแล้วมันจะปรับปรุงความเร็วอย่างน้อยสักหน่อย

ในที่สุดฉันอาจชี้ให้เห็นว่ามีส่วนหนึ่งของการเปรียบเทียบที่โดยทั่วไปไม่ยุติธรรมเลย เมื่อคุณติดตั้งระบบปฏิบัติการใหม่มันจะเร็วกว่าระบบปฏิบัติการที่ใช้ไปสักพักหนึ่ง โปรแกรมจัดเก็บข้อมูลในรีจิสทรีในฮาร์ดไดรฟ์ ฯลฯ ยิ่งคุณเพิ่มข้อมูลมากเท่าใดงานก็ยิ่งมีส่วนร่วมในการค้นหาข้อมูลที่คุณต้องการในเวลาใดก็ตาม ในขณะที่ บริษัท ที่ขาย "ตัวทำความสะอาดรีจิสทรี" และผลกระทบดังกล่าวบ่อยครั้งเกินจริง ดังนั้นหากคุณทำการฟอร์แมตฮาร์ดไดรฟ์ของคุณใหม่และติดตั้งระบบปฏิบัติการเดียวกันใหม่ทั้งหมดคุณอาจคาดว่าจะเห็นการปรับปรุงความเร็ว - และหากคุณติดตั้งระบบปฏิบัติการเก่าและใช้งานเป็นเวลานาน การปรับปรุงที่ (ทั้งหมดด้วยตัวเอง) สามารถสวยมาก อย่างน้อยส่วนหนึ่งของการปรับปรุงความเร็วที่คุณเห็นอาจไม่ขึ้นกับความแตกต่างที่แท้จริงระหว่างสองระบบปฏิบัติการ

มีมากกว่านั้นแน่นอน แต่คุณเริ่มเข้าใจ มันไม่ได้เป็นเรื่องของฟีเจอร์เดียวที่สร้างความแตกต่างอย่างมากเนื่องจากฟีเจอร์มากมายที่มักจะสร้างความแตกต่างเล็ก ๆ น้อย ๆ ทีละอย่าง แต่พวกมันส่วนใหญ่จะรวมกัน


นี่เป็นคำอธิบายที่ดีมาก สิ่งสำคัญคือต้องรู้ว่าไบนารี 32 บิตจำนวนมากได้รับการออกแบบให้ทำงานภายใต้ Windows หลายรุ่นรวมถึง XP และอาจก่อนหน้านี้ พวกเขาจะต้องทำงานบน i386 หรืออย่างน้อย i586 AMD64 ไม่จำเป็นต้องสนับสนุนอะไรน้อยกว่า Pentium 4 แน่นอนถ้าเป็นโอเพนซอร์สที่คุณสามารถคอมไพล์ใหม่ได้มีระดับ SSE ซึ่งเป็นหนึ่งในเหตุผลที่ Silverlight ทำให้ถังไม่ดี
mckenzm

4

อาจไม่มีอะไรเกี่ยวข้องกับ 32 vs 64 บิต

มันไม่ชัดเจนจากโพสต์ของคุณสิ่งที่คุณหมายถึงโดย '64 บิตเร็วขึ้น' เราจะต้องดำเนินการต่อจากสิ่งที่คุณติดตั้ง Windows 64 บิตใหม่บนเครื่องที่คุณเคยใช้ Windows 32 บิตมาก่อนหรือไม่ หากเป็นเช่นนั้น 'การรีเซ็ต' ของโครงสร้างไฟล์สามารถอธิบายการเปลี่ยนแปลงความเร็วได้อย่างง่ายดาย การติดตั้งใหม่โดยเฉพาะอย่างยิ่งถ้าคุณทำการฟอร์แมทบ่อยครั้งจะตอบสนองได้ดีกว่าการติดตั้งแบบเก่าที่ไฟล์มีการแยกส่วนพื้นที่ดิสก์เหลือน้อยลง

นอกจากนี้ยังอาจเป็นหนึ่งในไดรเวอร์ ... ตัวอย่างเช่นไดรเวอร์วิดีโอที่ใหม่กว่าอาจเร็วกว่าและปรับให้เหมาะสมโดยผู้ผลิตมากกว่ารุ่น x86 รุ่นก่อน หรือไดรเวอร์ฮาร์ดดิสก์อาจดีกว่า


1
ความคิดที่ดี. การรู้เพิ่มเติมว่า "เร็วกว่า" หมายถึงอะไรจริง ๆ สามารถช่วย แอปพลิเคชันโหลดเร็วขึ้นหรือไม่ หน้าต่างเคลื่อนไหวเร็วขึ้นหรือไม่ เกมมี fps ที่สูงขึ้นหรือไม่ คัดลอกไฟล์เร็วขึ้นหรือไม่ มันเป็นไปได้ค่อนข้างคำอธิบายทั้งหมดที่นี่ในขณะที่น่าสนใจที่จะเข้าใจความแตกต่าง 32b และ 64b OS จริง ๆ แล้วไม่เกี่ยวข้องกับความแตกต่างที่แท้จริงแจสเปอร์อธิบาย
Suma

เอาล่ะฉันจะให้ภาพที่ชัดเจนเกี่ยวกับสิ่งที่ฉันกำลังพูดถึง ฉันมี Windows 7 x86 อยู่พักหนึ่งแล้วโดยติดตั้งซอฟต์แวร์และเกมที่จำเป็น 100% ฉันติดตั้งระบบเดียวกันใหม่บนเครื่องเดียวกันพร้อมกับซอฟต์แวร์และเกมจำนวนเท่ากันและมันทำให้ฉันมีประสบการณ์ที่เหมือนกัน ฉันทำความสะอาดรีจิสทรีของฉันวันละครั้งแยกส่วนฮาร์ดไดรฟ์ของฉันทุกสองสามวันและรักษาพื้นที่ว่างที่เหมาะสมในแต่ละไดรฟ์ อย่างไรก็ตามหลังจากนี้ฉันติดตั้ง Windows 7 x64 สองครั้งโดยมี 100% ของสิ่งที่ฉันต้องการในนั้นเพื่อค้นหาประสบการณ์ทั้งสองหลังเหมือนกัน [ดำเนินการต่อ]
Jasper

สิ่งต่าง ๆ ที่รู้สึกดีขึ้น - หน้าต่างเคลื่อนไหวราบรื่นขึ้นไฟล์ที่ถูกคัดลอกเร็วขึ้นมากโปรแกรมแก้ไขภาพถ่ายบางภาพวาดได้เร็วขึ้น (ทั้ง x86 และ x64) วิดีโอ HD ทำงานราบรื่นกว่า (บน MPC-HC x64) และประสบการณ์โดยรวมที่เสถียรยิ่งขึ้น เกมดังกล่าวไม่แสดงการเปลี่ยนแปลงใด ๆ
แจสเปอร์

คุณเห็นไหมว่านี่เป็นสิ่งเล็กน้อย แต่ฉันไม่เข้าใจว่าทำไมสิ่งเล็ก ๆ เหล่านี้ถึงเกิดขึ้นซึ่งทำให้เกิดคำถามนี้ =) ฉันจะไม่ต้องกังวลถ้าฉันมี RAM 4+ GB ฉันได้มอบเครดิตให้กับ Windows 7 x64 ที่สามารถจัดการได้ แต่นั่นไม่ใช่ในกรณีนี้ซึ่งทำให้ซับซ้อนขึ้นเล็กน้อย
แจสเปอร์

2

ในการพูดง่ายๆก็คือคอมพิวเตอร์ของคุณสามารถประมวลผลข้อมูล 64 บิต (8 ไบต์) ต่อรอบสัญญาณนาฬิกา โปรเซสเซอร์ของคุณได้รับข้อมูลในรูปแบบของบิตที่จัดแจงไว้ล่วงหน้าซึ่งรู้จักกันในชื่อคำ คำในสถาปัตยกรรม x64 มีขนาดสองเท่าของคำในสถาปัตยกรรม x86 แม้ว่าตัวประมวลผลของคุณอาจไม่ประมวลผลข้อมูลได้เร็วขึ้น (Core 2 ของคุณอยู่ที่ 2.93 Ghz สำหรับการติดตั้งทั้งคู่) อย่างไรก็ตามการประมวลผลข้อมูลมีประสิทธิภาพมากขึ้น นอกจากนี้ตามที่กล่าวไว้ในความคิดเห็นจะช่วยให้คุณสามารถระบุ RAM ทั้งหมดของคุณได้เนื่องจากตัวประมวลผลของคุณกำลังอ่านจาก RAM ของคุณในแบบ 64 บิต จากวิกิพีเดีย :

บ่อยครั้งเมื่อพูดถึงขนาดคำของคอมพิวเตอร์สมัยใหม่หนึ่งยังอธิบายขนาดของพื้นที่ที่อยู่ในคอมพิวเตอร์เครื่องนั้น ตัวอย่างเช่นคอมพิวเตอร์ที่เรียกว่า "32- บิต" มักจะอนุญาตให้ใช้ที่อยู่หน่วยความจำแบบ 32 บิตได้เช่นกัน คอมพิวเตอร์แบบ 32 บิตที่สามารถระบุแอดเดรสแบบไบต์สามารถระบุที่อยู่ 2 ^ 32 = 4,294,967,296 ไบต์ของหน่วยความจำหรือ 4 กิกะไบต์ (GB) ดูเหมือนว่ามีเหตุผลและมีประโยชน์เนื่องจากช่วยให้ที่อยู่หน่วยความจำเดียวสามารถจัดเก็บได้อย่างมีประสิทธิภาพในหนึ่งคำ

สำหรับโปรเซสเซอร์ 64 บิตสิ่งนี้ไม่ได้เพิ่มขึ้น 2 เท่ามันจะเพิ่มขึ้นแบบทวีคูณ:

คอมพิวเตอร์ 64- บิตที่ทันสมัยสามารถกำหนดแอดเดรสไบต์ได้พร้อมการรองรับระบบปฏิบัติการที่เหมาะสมสามารถจัดการกับ 2 ^ 64 ไบต์ (หรือ 16 exbibytes) ซึ่ง ณ ปี 2554 ถือว่าไม่ จำกัด ในทางปฏิบัติ

นี้บทความแม้จะเล็ก ๆ น้อย ๆ ลงวันที่เป็นอ่านข้อมูลมากเกี่ยวกับวิธีการทำงานของการประมวลผล 64 บิต

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


13
"สามารถประมวลผลข้อมูล 64 บิต (8 ไบต์) ต่อวงจรนาฬิกา" นี่อาจฟังดูสมเหตุสมผล แต่จริงๆแล้วมันไร้สาระ แทบไม่มีการคำนวณใด ๆ ที่จะใช้ประโยชน์ได้ 8 ไบต์ สำหรับทราฟฟิกของหน่วยความจำ CPU พื้นฐานนั้นเหมือนกันแคชและทราฟฟิกของหน่วยความจำจะใช้ BUS เดียวกัน
Suma

5
"เนื่องจากระบบปฏิบัติการจำนวนมากสามารถโหลดลงในหน่วยความจำได้" อีกครั้งไม่เป็นความจริง สิ่งนี้จะเป็นจริงถ้า "มากกว่า OS" จะมากกว่า 4 GB การกำหนดแอดเดรส 64b ไม่ได้ช่วยอะไรเลยขณะทำงานกับข้อมูลที่มีขนาดต่ำกว่า 4 GB
Suma

6
@ Kyle: อ่านคำถามอีกครั้ง หน่วยประมวลผลเหมือนกับที่อยู่บนเครื่องเดียวกัน มันเกี่ยวกับความแตกต่างของพฤติกรรม OS บนเครื่องเดียวกันไม่ใช่ความแตกต่างระหว่างสองเครื่อง และ fyi ฉันอยากจะโต้เถียง การตะโกนใส่ผู้คนไม่เคยช่วยใครเลย นอกจากนี้ฉันเป็นผู้ใช้คอมพิวเตอร์และนี่คือคำถามผู้ใช้คอมพิวเตอร์ ดังนั้นทำไมฉันไม่ควรตอบ
Joris Meys

6
คุณไม่สามารถตอบในฟอรัมสาธารณะโดยไม่มีผิวหนังหนาพอที่จะเอามาเป็นก้อน นอกจากนี้คุณยังต้องสามารถรับมือกับธรรมชาติของคอมพิวเตอร์ nerds ที่เก็บข้อมูลทุกคำถามและคำตอบ อย่าดึงหมัดของคุณ แต่ให้แน่ใจว่าคุณโพสต์ความคิดที่ดี แก้ไขให้ถูกต้องเมื่อพิสูจน์แล้วว่าผิดและยืนหยัดอยู่ในที่ที่ถูกต้อง
WernerCD

6
ส่วนที่เกี่ยวกับ "ระบบปฏิบัติการที่มากขึ้นสามารถโหลดลงในหน่วยความจำและแก้ไขได้โดยโปรเซสเซอร์ที่มีประสิทธิภาพมากขึ้น" เป็นขยะมากที่สุด My Win7 ใช้ RAM ขนาด 500MB ซึ่งต่ำกว่าขีด จำกัด 4GB ที่ CPU 32 บิต จำกัด การจัดการกับสิ่งใดมีประสิทธิภาพน้อยลงเนื่องจากพอยน์เตอร์มีขนาดใหญ่เป็นสองเท่าในหน่วยความจำและใช้แคชข้อมูลที่มีค่ามากขึ้น การเพิ่มประสิทธิภาพที่แท้จริงมาจากชุดการลงทะเบียนที่มากขึ้น การทำงานกับข้อมูลในแคช L1 คือ 3 รอบนาฬิกาการทำงานกับข้อมูลในการลงทะเบียนคือ 1 รอบนาฬิกา
zvrba

2

ฉันคิดว่าเหตุผลที่ลึกซึ้งที่สุดว่าทำไมระบบถึงเร็วกว่าการใช้ 64 บิตระบบปฏิบัติการเป็นเพราะระบบ 32 บิตไม่สามารถใช้ RAM ทั้งหมดในระบบได้

ระบบปฏิบัติการ 32 บิตจะสามารถควบคุม 32 บิตเช่นพื้นที่ที่อยู่ทางกายภาพ 4GB พื้นที่ที่อยู่นี้ประกอบด้วยหน่วยความจำระบบหน่วยความจำวิดีโออุปกรณ์ IO ฯลฯ ดังนั้นเมื่อคุณมี RAM วิดีโอ 1GB โดยเฉพาะคุณสามารถลบ GB แรกจาก RAM ที่มีอยู่ของคุณ จากนั้นอุปกรณ์อื่นอาจลบอีก 200MB หรือมากกว่านั้น

ทำให้คุณมี RAM เพียง 2.8 GB สำหรับการใช้งาน ไม่มากใน Windows 7;)

ในทางตรงกันข้ามระบบ 64 บิตนั้นสามารถใช้ RAM ของคุณได้ทั้งหมด


"ดังนั้นเมื่อคุณมี RAM วิดีโอ 1GB เฉพาะคุณสามารถลบ GB แรกจาก RAM ที่มีอยู่ของคุณได้" ฉันขอโทษที่สร้างความรำคาญให้กับที่นี่ แต่ดูเหมือนจะไม่จริง ฉันมีระบบ WinXP ที่มี RAM 4 GB และ VRAM GPU เฉพาะ 1 GB และฉันมี RAM 3.6 GB สำหรับระบบ คำถามพื้นที่ที่อยู่ค่อนข้างซับซ้อน: เช่นแต่ละกระบวนการมีพื้นที่ที่อยู่เสมือน 4 GB ผู้ขับขี่จำเป็นต้องแมป GPU RAM ลงในพื้นที่ที่อยู่เสมือนเพื่อให้สามารถเข้าถึงได้ แต่ไม่จำเป็นต้องใช้ระบบปฏิบัติการในการทำแผนที่ GPU RAM ใน RAM จริง
Suma

@Suma แล้วอาจไม่ใช่ VRAM ทั้งหมดที่ไม่ได้จับคู่กับ RAM จริง แต่ 32 บิต windows XP, Vista และ 7 จะไม่สามารถใช้พื้นที่ที่อยู่จริงมากกว่า 4GB หน้าต่างเซิร์ฟเวอร์ 32 บิตบางรุ่นจะสามารถใช้ที่อยู่ได้มากกว่า แต่ใช้ส่วนขยายที่อยู่ทางกายภาพ (แม้ว่าคุณจะสามารถเปิดใช้งานส่วนขยายที่อยู่ทางกายภาพใน 32 บิตบนเดสก์ท็อป windows windows ได้ก็ตาม ดังนั้นวาง 4GB of RAM ใน 32 บิต windows 7 และคุณจะไม่สามารถใช้งานได้ทั้งหมด พื้นที่ที่อยู่เสมือนสำหรับกระบวนการไม่เกี่ยวข้องกับข้อ จำกัด นี้
Pete

"แต่ 32 บิต windows XP, Vista และ 7 จะไม่สามารถใช้พื้นที่ที่อยู่ทางกายภาพได้มากกว่า 4GB" ใช่มันเป็นเรื่องจริง สำหรับคำอธิบายรายละเอียดดูcodinghorror.com/blog/2007/03/... GPU กินพื้นที่ 4 GB บางส่วนอย่างแน่นอน ฉันแค่ต้องการแก้ไขความเข้าใจผิดที่พบบ่อยในพื้นที่ที่อยู่ที่กินนั้นจำเป็นต้องเข้าถึง GPU RAM ซึ่งอันที่จริงแล้วมันไม่ใช่ คำอธิบายในsuperuser.com/questions/242562/…นั้นถูกต้องในส่วนนี้
Suma

-1

ฉันติดตั้ง 32 บิตและ 64 บิตบนโน้ตบุ๊ก Lenovo x100e สองตัวที่เหมือนกัน 32 บิตมี RAM 2G และ 64 บิตมี RAM 4G และ 32 บิตยังคงทำงานได้เร็วขึ้นราบรื่นขึ้นตอบสนองได้ดีกว่าด้วยความล่าช้าน้อยกว่า 64 บิตซึ่งล่าช้าและซบเซา ซีพียูเป็นซีพียู 64 บิต ไดรเวอร์เดียวกันได้รับการติดตั้งและอัพเดต Windows ทั้งสองอย่าง ฉันคิดว่า 64 บิตสำหรับเครื่องระดับสูงไม่ใช่ระดับเริ่มต้นแม้แต่กับซีพียู x64


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