Announcement

Collapse
No announcement yet.

ช่วยอธิบาย L3 ให้เข้าใจง่ายๆทีครับ

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • ช่วยอธิบาย L3 ให้เข้าใจง่ายๆทีครับ

    1.ถ้า cpu ประมวลผล1งาน จดงานไว้ที่ L 1 2 3 แล้วถ้าประมวลผลงานที่2 ในกรณีงานเหมือนงานแรกเป๊ะ(รันโปรแกรมเดียวกันหลายๆโปรแกรม) cpuมันจะต้องประมวลผลใหม่รึป่าวครับ


    2.แล้ว 6.4GTps เปรียบได้เหมือน buss เท่าไหร่
    Last edited by Alexzander; 26 Dec 2009, 21:55:12.

  • #2
    ถ้าข้อมูลที่ cpu ต้องการอยู่ใน L พอดีก็จะดึงมาใช้ได้เลยครับ

    Comment


    • #3
      ประมานว่า ถ้าเราสั่งประมวลผลไป L3 จะทำหน้าที่เก็บข้อมูลไว้

      ถ้าเรียกใช้อีกทีจะได้ไม่ต้องผ่านแรม มาเอาจาก L3 เลย


      ปล. ไม่แน่ใจ ..รอท่านถัดไป

      Comment


      • #4
        พื่นฐานเรื่องL ถ้าพูดถึงโครงสร้างและหลักการทำงานลึกๆนี่ คืนอาจารย์ไปหมดล่ะ
        ยุดก่อนC2Dนี่ไม่ค่อยคำนึงถึงLเท่าไหร่ เพราะวิศวะก่อนเขาได้ออกแบบมาแล้วว่าต้องใช้L1เท่าไหร่ L2เท่าไหร่ถึงจะเหมาะสม แต่เดี๋ยวจะพูดอยางนั้นคงไม่ถูกต้องซะทั้งหมด เพราะจะมีเรื่องการตลาดมากเกี่ยวข้องด้วย ดังจะเห็นCPUหลายรุ่นที่clockเท่ากัน โครงสร้างเหมือนกัน แต่L2ไม่เท่ากัน
        ส่วนเรื่องที่ถาม รอคห.ต่อไปล่ะกัน

        Comment


        • #5
          เปิด task ดู บางโปรแกรมแค่1โปร ใช้แรม 20000k แล้ว L 1 2 3 มีแค่ 12mb มันช่วยได้ตรงไหนครับหรือไว้ใช้กับงานอะไร

          Comment


          • #6
            Originally posted by Alexzander View Post
            เปิด task ดู บางโปรแกรมแค่1โปร ใช้แรม 20000k แล้ว L 1 2 3 มีแค่ 12mb มันช่วยได้ตรงไหนครับหรือไว้ใช้กับงานอะไร
            เวลาที่ CPU จะประมวลผล CPU จะต้องดึงคำสั่ง หรือ ข้อมูลจาก หน่วย ความจำ ดังนี้
            CPU> L1 ถ้าหาจาก L1 ไม่เจอ จะไป หาที่ L2> ถ้าหาไม่เจออีกจะไปที่ L3 > แล้วค่อยไปที่ Ram > ซึ่งเจ้า L3 นี้ จะมีประโยชน์มากๆ ในกรณีที่ ต้องมี การประมวลผลข้อมูลที่มีขนาดใหญ่ๆ เช่น การ Renderfile การ แปลงไฟล์ต่างๆ เพราะ ว่า เจ้าตัว L3 นี้ส่วนมากจะมีขนาดใหญ่ (2-12 MB) แต่ ความล่าช้าในการเข้าถึงข้อมูล(Latency) น้อยกว่าแรม สรุปง่ายๆ ก็ เก้บข้อมูลได้เยอะ และวิ่ง เร็วกว่าแรม ความเร็วของ Cache นั้น เร็วมาก ถ้าจำไม่ผิด ก็วิ่งเท่ากับความเร็ว CPU ทำให้ ดึงข้อมูลใหญ่ๆ ไปประมวลผลได้ไว มากๆ โดยที่ไม่ต้องไปค้นหาข้อมุลใน Ram ซึ่งช้ากว่า

            Comment


            • #7
              data และ instruction จะสามารถทำงานได้ ต้องอยู่ใน main memory เท่านั้น
              555++ ขอแบบวิชาการหน่อย555++

              Comment


              • #8
                ตามความเข้าใจของผม ถ้าไม่มั่วและเข้าใจผิดนะ
                L3 ของ intel มีอิสระจาก Core Clock ซึ่งต่างจาก L2 ของ Penryn ที่ทำงานด้วยความเร็วเท่ากับ Core Clock ทำให้ L2 ยิ่งมีขนาดใหญ่ ทำให้ยิ่งมีโอกาสเกิดความผิดพลาดของข้อมูลและการซ้ำซ้อนได้มากขึ้น ผิดกับ L3 ใน Nehalem มีอิสระจาก Core Clock ทำให้ลดโอกาสการความผิดพลาดของข้อมูล
                และ
                Nehalem ได้มีการ ใช้ L-Cache ในแบบ inclusive cache ข้อมูลที่ปรากฏใน L1 จะไปโพล่ใน L2 ด้วยเช่นกัน ช่วยในเรื่องการเข้าถึงข้อมูลได้เร็วขึ้น

                ส่วน QPI เทียบเป็น Bus เท่าไหร่ไม่รู้ แต่รู้ว่าแบนวิดท์ มากกว่า 3.4 เท่า และช่วยให้เข้าถึงข้อมูลได้เร็วกว่า 40% จริง ๆ โครงสร้างยังไงมันก็ต่างกันอยู่แล้ว เทียบกันลำบาก

                Comment


                • #9
                  ยังงงๆอยู่ ที่ถามไป เปิด task ดู บางโปรแกรมแค่1โปร ใช้แรม 20000k แล้ว L 1 2 3 มีแค่ 12mb มันจะจำข้อมูลพอเหรอครับ หน่วยL 1 2 3 มันเป็นยังไงเช่น 12mb = 12ล้านไบ๊ ,20000k แรม = 20ล้านไบ๊ แบบนี้หรือป่าว

                  Comment


                  • #10
                    มันจะเอาข้อมูลจากแรมไปพักชั่วคราวในแคชเพื่อรอการประมวลผลอะ ถ้ามีที่พักเยอะก็ไม่ต้องเสียเวลาดึงจากแรมบ่อย

                    ความจุแคชกะแรมก็หน่วยเดียวกันล่ะครับ แรมมีเยอะกว่ามากแต่ก็ช้ากว่ามากด้วย

                    Comment


                    • #11
                      Originally posted by GOD-HAND View Post
                      ตามความเข้าใจของผม ถ้าไม่มั่วและเข้าใจผิดนะ
                      L3 ของ intel มีอิสระจาก Core Clock ซึ่งต่างจาก L2 ของ Penryn ที่ทำงานด้วยความเร็วเท่ากับ Core Clock ทำให้ L2 ยิ่งมีขนาดใหญ่ ทำให้ยิ่งมีโอกาสเกิดความผิดพลาดของข้อมูลและการซ้ำซ้อนได้มากขึ้น ผิดกับ L3 ใน Nehalem มีอิสระจาก Core Clock ทำให้ลดโอกาสการความผิดพลาดของข้อมูล
                      และ
                      Nehalem ได้มีการ ใช้ L-Cache ในแบบ inclusive cache ข้อมูลที่ปรากฏใน L1 จะไปโพล่ใน L2 ด้วยเช่นกัน ช่วยในเรื่องการเข้าถึงข้อมูลได้เร็วขึ้น

                      ส่วน QPI เทียบเป็น Bus เท่าไหร่ไม่รู้ แต่รู้ว่าแบนวิดท์ มากกว่า 3.4 เท่า และช่วยให้เข้าถึงข้อมูลได้เร็วกว่า 40% จริง ๆ โครงสร้างยังไงมันก็ต่างกันอยู่แล้ว เทียบกันลำบาก
                      เรื่อง Core Clock และ Uncore เหมือนจะเคยได้ยินเหมือนกันค่ะ
                      พอเกิด Cache missบ่อยๆ แทนที่จะไวขึ้น ก็ต้องมาเสียเวลาประมวลผลใหม่ เลยทำให้ช้าลงกว่าเดิม ><
                      ไม่ได้เรียนทางด้านนี้มาด้วยซะสิ เราจะโชว์โง่ปะคะเนี่ยแหะๆ

                      Comment


                      • #12
                        ผมอธิบายคร่าวๆนะ


                        ใน CPU 1 Core ไม่ได้มีการทำงานแค่การทำงานเดียวนะครับ อย่าเข้าใจผิด

                        สถาปัยตกรรมการประมวลผลภายใน ยังเป็นลักษณะของ Pipeline อยู่ ซึ่งจะมีการทำงานตามคำสั่ง

                        ย่อยๆ ในภาษาโปรแกรมที่ใช้เขียนโปรแกรม นั้นๆ ( ต้องว่าลึกลงไปในเรื่อง micro code อีก ) ซึ่งการทำงานย่อยๆ เมื่อเสร็จแล้ว หรือยังไม่เสร็จก็ตาม จะมีการพักข้อมูล

                        ไว้ที่หน่วยความจำ เพื่อรอให้แต่ละ Pipeline เรียกคำสั่งไปประมวลผล และพัก result เอาไว้ เพื่อใช้เรียกในการทำงานขั้นถัดไป

                        เพียงแต่ว่า หลักการใช้ L1 L2 L3 นั้น ก็ขึ้นอยู่กับ การจัดวางโครงสร้างของการทำงานทั้งระบบของ Computer
                        แค่นั้นเอง

                        ซึ่งจะสังเกตุได้จาก วิวัฒนาการของคอมพิวเตอร์นั้น ในช่วงแรกๆ จะยังไม่มี ทั้ง L1 L2 L3 ที่มีการเพิ่มมานั้น
                        แสดงว่า สามารถรองรับการทำงานที่รวดเร็วขึ้นได้ ด้วยการ จัดระบบ RAM ให้มีความเหมาะสมกับการประมวลผลของ CPU
                        Last edited by zicmaxx; 29 Dec 2009, 19:05:41.

                        Comment


                        • #13
                          ลืมตอบในกรณี ที่ว่าเปิดโปรแกรมเดียวกันหลายๆโปรแกรมพร้อมกัน

                          ตรงนี้ต้องเข้าใจก่อนนะว่า มันขึ้นอยู่กับว่า โปรแกรมนั้นสนับสนุนการทำงาน แบบการแชร์ หน่วยความจำรึเปล่า

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

                          ตรงนี้ก็ต้องไปพึ่ง เทคนิคการเขียนโปรแกรม เพื่อให้ดึงความสามารถของ CPU ออกมามากที่สุด

                          แต่โดยทั่วไป การเปิดหลายโปรแกรม ทำงานเดียวกัน ไม่ได้ทำให้ โปรแกรมทำงานไวขึ้น เพราะแต่ละโปรแกรม
                          มีการทำงานเป็นอิสระต่อกัน

                          Comment


                          • #14
                            น่าจะขึ้นอยู่กับ โครงสร้างของการเข้าถึงแคชของ CPU เอง และ software ที่สนันสนุนโครงสร้างนั้นด้วยครับ
                            แคชทำงานไวก็จริง แต่ถ้าโปรแกรมไม่รู้ว่าแคชทำงานไว รึไม่รู้ว่าแคชทำงานยังไง ก็ไร้ประโยชน์
                            ก็ยังไม่เคยเห็นโปรแกรมไหนที่ใช้งานแคช ได้จริงๆจังๆซักที
                            เห็นแต่แคชเพิ่มขึ้น 1 เท่าตัว แต่การทำงานไวขึ้นแค่ไม่เกิน 3~10% เอง
                            ก็เลยไม่รู้ว่า แคชมีเอาไว้เป็นแค่กระดาษทดเลขรึป่าว

                            Comment


                            • #15
                              ข้อ2 ผมว่านะน่าจะเป็น สิ่งที่มาแก้ปัญหา คอขวดครับ

                              Comment

                              Working...
                              X