עבור לתוכן

AMD 64bit ????

Featured Replies

פורסם

אם יש לי מעבד AMD 64 ומע' הפעלה ווינדוס 32 ביט

אז האם באמת יש אפקט ל64 של המעבד או זה רק

למע' הפעלה עתידיות{אני יודע שיש XP שעובד ב64}

האם הוא יכול לעבוד על AMD או שזה קשור גם ללוח?

פורסם

בשביל לקבל ת היתרונות של 64 ביט צריך מערכת הפעלה תומכת 64 ביט, דרייברים שתומכים ב64 ביט ותוכנות שיודעות לנצל את היתרונות של החישוב ב 64 ביט.

אם תשתמש בווינדוס איכספי של 32 ביט אז הוא לא ינצל את יכולות ה64 ביט של המעבד.

להרבה הפצות לינוקס יש תמיכה ב64 ביט.

פורסם

בקרוב כנראה מחצית שניה של 2005 יהיה winxp 64bit

לפי ההשפעה שראיתי על לינוקס יש שיפור של פי 2 בביצועים.

מעניין כמה זה ינוצל על ה windows.

פורסם

בקרוב כנראה מחצית שניה של 2005 יהיה winxp 64bit

לפי ההשפעה שראיתי על לינוקס יש שיפור של פי 2 בביצועים.

מעניין כמה זה ינוצל על ה windows.

ממש לא נכון.

מעבר ל- 64 ביט יגרום לתופעות הבאות:

1. הגדלת הגודל של האפליקציות על הדיסק ובזכרון בזמן ריצה בגלל השימוש בכתובות גדולות יותר (64 ביט במקום 32 ביט)

2. תוכנות שמשתמשות בחישובי 64 ביט יהיה מהירות יותר מתוכנות 32 ביט שנאלצות לעשות חישובים כאלו ב- 2 פעולות.

3. שימוש בקומפיילרים ל- AMD64 מאפשר גישה ל-8 רגיסטרים נוספים, מה שמשפר את מהירות הקוד הנוצר על ידי הקומפיילר.

רוב השיפור בא מסעיף 3, והוא לא יתבטא ביותר מכמה עשרות אחוזים במקרה האופטימלי. בחלק מהמקרים יהיה שיפור זניח, ובמקרים קיצוניים תהיה ירידה בביצועים.

זה יכול לקרות אם הקוד גדל בצורה כזאת שה- working set שלו (זה קטע הקוד שרץ בלולאות הפנימיות של התוכנה ולכן הוא רץ ב- 99% מהזמן מתוך ה- cache) גדל כך שקודם הוא נכנס ל-cache במלואו ועכשיו לא.

פורסם

הענין של גודל הזיכרון יכול להיות נושא שיראה הבדל ניכר בביצועים בין סוקט 754 ל 939 כאשר המעבד יצטרך (יש להניח) את רוחב הפס הנוסף.

היתרונות עולים בהרבה על החסרונות - בתנאי שבאמת יש צורך ב 64 ביט.

אם החישובים הם של 32 ביט ופשוט מוסיפים להם 32 אפסים זה לא מועיל לשום דבר ואכן תורגש ירידה בביצועים עקב ביזבוז של רוחב פס ומקום בקאש.

אבל מקוים שהמתכנתים ידעו מתי להשתמש בבלוקים של 64 ביט (הרי עד היום אפשר עדיין לגשת לזיכרון ברזולוציה של בית אחד למרות שהמעבדים מוגדרים כ 32 ביט).

פורסם

הענין של גודל הזיכרון יכול להיות נושא שיראה הבדל ניכר בביצועים בין סוקט 754 ל 939 כאשר המעבד יצטרך (יש להניח) את רוחב הפס הנוסף.

היתרונות עולים בהרבה על החסרונות - בתנאי שבאמת יש צורך ב 64 ביט.

אם החישובים הם של 32 ביט ופשוט מוסיפים להם 32 אפסים זה לא מועיל לשום דבר ואכן תורגש ירידה בביצועים עקב ביזבוז של רוחב פס ומקום בקאש.

אבל מקוים שהמתכנתים ידעו מתי להשתמש בבלוקים של 64 ביט (הרי עד היום אפשר עדיין לגשת לזיכרון ברזולוציה של בית אחד למרות שהמעבדים מוגדרים כ 32 ביט).

1. חישובים של 32 ביט לא זקוקים ל- "32 אפסים נוספים" . אתה יכול להמשיך לעשות חישובים גם ב- 32 ביט. למעשה המודל הרגיל של תכנות 64 ביט תכת XP64 יהיה עם int בגודל 32 ביט.

http://www.opengroup.org/public/tech/aspen/lp64_wp.htm

2. הגדלת הקוד נגרמת בגלל הגדלת הכתובות ל- 64 ביט, לא בגלל הנתונים.

פורסם

[ltr]I don't think the code will be bigger, since you don't specify the address itself in the code, but it's a pointer to an address. so the code on the hard disk and on the CPU's cache stay the same size, but it's get bigger in the RAM. now the question is how much bigger? well considering most of the space in the ram is taken by textures and models other than memory pointers, I'd say 10Mb bigger is worst case, so it shouldn't be a big deal.

as for performance gain with 64bit computing, as far as games go I don't think you'll get any performance gain, though Super PI will be much faster. the Athlon 64 was developed for the server market, where 64 bit computing is useful. and as developing a CPU is very expansive, they decided to launch it for the home market as well.

Athlon 64 isn't good because it got an x86-64 command set, it's good because it's good.[/ltr]

פורסם

3. שימוש בקומפיילרים ל- AMD64 מאפשר גישה ל-8 רגיסטרים נוספים, מה שמשפר את מהירות הקוד הנוצר על ידי הקומפיילר.

רק באסמבלר ישימו לב להבדל

כי רק באמסבלר אתה אשכרה משתמש באוגרים בעצמך

בC ובשאר אתה לא תשים לב כמעט

פורסם

תקרא שוב מה שכתבתי.

מה זה "the address itself" לעומת "pointer to the address" ?

כתובת היא כתובת היא כתובת.

והיא 64 ביט במקרה הזה.

חוץ מזה אתה מסכים שהקוד יגדל.

הבעיה העיקרית שעשויה לצוץ היא הקטנת יעילות ה-cache בגלל הגדלת הקוד.

מצד שני ישנו שיפור במספר הרגיסטרים, שעשוי (בעזרת קומפיילרים טובים) להביא לקוד יעיל יותר.

אין ספק שהרחבות ה-64 ביט בפני עצמן מועילות רק למי שמריץ תוכנות שצריכות יותר מ-4GB. אחרי הכל, ניתן היה לשפר את הארכיטקטורה (רגיסטרים נוספים) גם בלי להגדיל אותם ל-64 ביט.

גדי לא להיות החלטי מדי אציין /בכל זאת, ישנן כמה אפליקציות מיוחדות שיכולות להרוויח ממרחב זכרון וירטואלי גדול גם בלי זכרון פיזי של 4GB.

(שימוש במיפוי קבצים לזכרון - מה שמבצעת ביוניקס פונקצית המערכת mmap - עבור קבצים גדולים מ- 4GB).

פורסם

רק באסמבלר ישימו לב להבדל

כי רק באמסבלר אתה אשכרה משתמש באוגרים בעצמך

בC ובשאר אתה לא תשים לב כמעט

כן, אבל הקומפיילר שלך ישים לב :)

קמפל את אותו הקוד במוד x86 וקמפל אותו במוד x86-64 עם קומפיילר טוב, ותקבל קוד יעיל יותר בגלל כל הרגיסטרים הנוספים.

פורסם

1. חישובים של 32 ביט לא זקוקים ל- "32 אפסים נוספים" . אתה יכול להמשיך לעשות חישובים גם ב- 32 ביט. למעשה המודל הרגיל של תכנות 64 ביט תכת XP64 יהיה עם int בגודל 32 ביט.

http://www.opengroup.org/public/tech/aspen/lp64_wp.htm

2. הגדלת הקוד נגרמת בגלל הגדלת הכתובות ל- 64 ביט, לא בגלל הנתונים.

אני רוצה להאמין שיש שם תמיכה ב INT של 64 ביט. הנקודה שלי היתה שהגדלה אוטומטית של כל משתני ה UNT ל 64 ביט לא מועילה אם לא באמת צריך את התחום הזה.

פורסם

אני רוצה להאמין שיש שם תמיכה ב INT של 64 ביט. הנקודה שלי היתה שהגדלה אוטומטית של כל משתני ה UNT ל 64 ביט לא מועילה אם לא באמת צריך את התחום הזה.

יש תמיכה ב- INT64, אבל המודל למתכנת נשאר: INT32, LONG64.

פורסם

רק באסמבלר ישימו לב להבדל

כי רק באמסבלר אתה אשכרה משתמש באוגרים בעצמך

בC ובשאר אתה לא תשים לב כמעט

ממש אין לך מושג על מה מדובר אה? ::)

השימוש באוגרים נעשה בכל נקודת זמן שהמחשב עובד, בכל תוכנה. אוגרים = מהירות (לעומת שימוש בזכרון פנימי) לכן יותר אוגרים = חסכון בפניה לזכרון פנימי = תוספת ביצועים.

וכמובן, זה תלוי איך הקומפיילר הידר את התכנית (חלוקת השימוש באוגרים).

פורסם

ואני חושב שיש לי כאב ראש מכמות החוסר ידע והבנה. מה גם שבפועל מכיוון שאף אחד פה לא עובד על פיתוח מערכת ההפעלה, או על דריברים, או על קומפילרים של 64BIT אז אין צורך להתייחס, אפשר לענות בפשטות לשאלה שלו לגבי מה שיודעים וזהו....

מה גם כיום יש סביבות עבודה של LINUX שעובדות ב 64BIT מלא מכל הבחינות, אולי שם כדאי לבדוק כמה תוספת ביצועים יש בפועל וזהו... עד ש WINDWOS יעבור למשהו שעובד רשמית וטוב עם 64BIT הרבה דברים יכולים להשתנות....

פורסם

ואני חושב שיש לי כאב ראש מכמות החוסר ידע והבנה. מה גם שבפועל מכיוון שאף אחד פה לא עובד על פיתוח מערכת ההפעלה, או על דריברים, או על קומפילרים של 64BIT אז אין צורך להתייחס, אפשר לענות בפשטות לשאלה שלו לגבי מה שיודעים וזהו....

לגבי מי שכן או לא עובד, דבר בשם עצמך...

מה גם כיום יש סביבות עבודה של LINUX שעובדות ב 64BIT מלא מכל הבחינות, אולי שם כדאי לבדוק כמה תוספת ביצועים יש בפועל וזהו... עד ש WINDWOS יעבור למשהו שעובד רשמית וטוב עם 64BIT הרבה דברים יכולים להשתנות....

הבעיה ב- linux כרגע היא ש-gcc כבר מזמן לא בקו החזית של פיתוח אופטימיזציות לקומפיילרים. הקומפיילר של אינטל ושל מיקרוסופט די משאירים אותו מאחור.

הבנצ'מרק שמוזכר כאן מדבר על קומפילציה של כל סביבת ה- X11 בלינוקס תוך 47 דקות תחת מערכת הפעלה 32 ביט, ותוך 43 דקות תחת 64 ביט.

כמובן שריצת קומפיילר היא בנצ'מרק נקודתי, אבל הניחוש שלי ש- 10% שיפור יכול להיות מספר סביר.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים