דלג לתוכן הראשי
פרויקט זה בשלב בטא. מצאת באג? פתח issue ב-GitHub. יש שאלה או רעיון? שאל ב-Discussions — נשמח לשמוע ממך!
מה איכות התרגום בדף זה?

מבוא למצבי הרצה של Quantum Compute

כאשר IBM Quantum Compute Service הוצג לראשונה, משתמשים יכלו להריץ circuits רק כעבודות בודדות. ככל שהתפתחו סוגים שונים של עומסי עבודה קוונטיים, התברר שנדרשות אסטרטגיות תזמון שונות. מצבי ההרצה קובעים כיצד העבודות שלך מתוזמנות, ובחירת מצב ההרצה הנכון מאפשרת לעומס העבודה שלך לפעול ביעילות בתוך התקציב שלך. ישנם שלושה מצבי הרצה: job, session ו-batch.

Job mode​

בקשת primitive בודדת שנשלחת ללא context manager. ה-Circuits והקלטים ארוזים כ-primitive unified blocs (PUBs) ומוגשים כמשימת הרצה על המחשב הקוונטי. להרצה ב-job mode, ציין mode=backend בעת יצירת primitive. ראה דוגמאות Estimator ודוגמאות Sampler לשימוש.

Batch mode​

מנהל עבודות מרובות להרצה יעילה של ניסויים הכוללים עומסי עבודה מרובי-עבודות. עומסי עבודה אלה מורכבים מעבודות שניתן להריץ באופן עצמאי וללא תלות מותנית ביניהן. ב-batch mode, המשתמשים מגישים את כל העבודות שלהם בבת אחת.

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

קבוצות של עבודות הרצות ב-batch mode. חלק החישוב הקלאסי של כל עבודה מתרחש בו-זמנית, ואז כל העבודות נשלחות ל-QPU. ה-QPU נעול לשימושך מרגע שהעבודה הראשונה מגיעה ל-QPU ועד שהעבודה האחרונה מסיימת את העיבוד ב-QPU. אין פער בין עבודות שבו ה-QPU סרק.

הערות
  • בעת שימוש ב-batch, לא מובטח שהעבודות ירוצו בסדר שבו הן הוגשו. כמו כן, בעוד שעבודות ה-batch שלך ירוצו קרוב ככל האפשר זו לזו, הן אינן מקבלות גישה בלעדית ל-backend. לכן, עבודות ה-batch שלך עשויות לרוץ במקביל לעבודות של משתמשים אחרים אם יש מספיק קיבולת עיבוד ב-QPU. בנוסף, עבודות כיול QPU עשויות לרוץ בין עבודות ה-batch.
  • זמן ההמתנה בתור אינו קטן עבור העבודה הראשונה שמוגשת במסגרת batch. לכן, batch אינו מספק יתרונות כלשהם בעת הרצת עבודה בודדת.

להרצה ב-batch mode, ציין mode=batch בעת יצירת primitive או הרץ את העבודה ב-batch context manager. ראה הרץ עבודות ב-batch לדוגמאות.

Session mode​

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

A sets of jobs being run in session mode and the other is being run in batch mode.  Between each job is the interactive TTL (interactive time to live).  The active window starts when the first job starts and ends after the last job is completed. After the final job of the first set of jobs completes, the active window ends and the session is paused (but not closed).  Another set of jobs then starts and jobs continue in a similar manner. The QPU is reserved for your use during the entire session.

להרצה ב-session mode, ציין mode=session בעת יצירת primitive, או הרץ את העבודה ב-session context manager. ראה הרץ עבודות ב-session לדוגמאות.

הערות
  • זמן ההמתנה בתור אינו קטן עבור העבודה הראשונה שמוגשת במסגרת session. לכן, sessions אינם מספקים יתרונות כלשהם בעת הרצת עבודה בודדת.
  • משתמשי Open Plan אינם יכולים להגיש עבודות session.

זרימת עבודה בסיסית​

זרימת העבודה הבסיסית עבור batches ו-sessions דומה:

  1. העבודה הראשונה ב-batch או session נכנסת לתור הרגיל. עבור batches, כל קבוצת העבודות מתוזמנת יחד.

  2. כאשר העבודה הראשונה מתחילה לרוץ, טיימר זמן החיים המרבי (TTL) מתחיל ואינו נעצר או מושהה עד לסיומו.

  3. טיימר ה-interactive TTL מתחיל לאחר סיום כל עבודה. אם אין עבודות מוכנות במסגרת חלון ה-interactive TTL, עומס העבודה מושהה זמנית ובחירת עבודות רגילה מתחדשת. עבודה יכולה להפעיל מחדש את עומס העבודה המושהה אם ה-batch או ה-session לא הגיעו לערך ה-TTL המרבי שלהם.

    הערה

    העבודה חייבת לעבור את התור הרגיל כדי להפעיל מחדש את עומס העבודה.

  4. אם הגיעו לערך ה-TTL המרבי, עומס העבודה מסתיים וכל העבודות שנותרו בתור נכשלות. עבודה שרצה כעת לא תושלם אם עשייתה תחרוג ממגבלת העלות של המופע.

הסרטון הבא ממחיש את זרימת העבודה הבסיסית, תוך שימוש ב-sessions כדוגמה:

לפרטים מלאים על טיימרי TTL, ראה את המדריך זמן הרצה מרבי.

השלבים הבאים​