pycudafft

ספריית FFT עבור Pycuda
הורד עכשיו

pycudafft דירוג וסיכום

פרסומת

  • Rating:
  • רישיון:
  • MIT/X Consortium Lic...
  • מחיר:
  • FREE
  • שם המפרסם:
  • Bogdan Opanchuk
  • אתר האינטרנט של המוציא לאור:
  • http://github.com/Manticore

pycudafft תגים


pycudafft תיאור

ספריית FFT עבור Pycuda Pycudafft הוא ספריית FFT עבור Pycuda, שנכתב Python.Developer לכתוב את רגע הכתיבה, Pycuda חווה בעיות עם האזן הנגרמת על ידי החלטות אדריכלי של Nvidia. כתוצאה מכך, פיסת תוכנה זו נכתבה. הוא מכיל יישום של ffted batched, ported מיישום OpenCL של אפל. האידיאולוגיה של OpenCL של בניית קוד ליבה על מפות לטוס בצורה מושלמת על Pycuda, ומגוון של מנועי תבנית של Python עושה קוד הדור פשוט יותר. השתמשתי במנוע תבנית Mako, פשוט בגלל ההעדפה האישית. הקוד ניתן לשנות בקלות כדי להשתמש בכל מנוע אחר.עם, מאגר הפרויקט מכיל עטיפה, אשר מוסיף תמיכה אצווה עבור המיפוי שלה למיפוי כדי pycuda. הם נוספו למטרות בדיקה ולא יהיה נתמך באופן פעיל.שקיק להתחיל את השימוש הוא די פשוט. ראשית, ייבוא pycudafft ו numpy: >> ייבוא pycuda.Autoinit >>> ייבוא pycuda.gpuarray כמו gpuarray >>> מ pycudafft ייבוא fftplan >>> יבוא numpythen התוכנית יש ליצור. הבריאה אינה מהירה מאוד, בעיקר בגלל מהירות האוסף. אבל, למרבה המזל, מטמון Pycuda מקורות הידור, אז אם אתה משתמש באותה תוכנית עבור כל לרוץ של התוכנית שלך, זה יהיה נוצר די מהר. >>> תוכנית = FFFPLAN (16, 16) עכשיו, בואו להכין מערך בדיקה פשוט ולנסות לבצע תוכנית על זה: >>> נתונים = numpy.ones ((16, 16), Dtype = numpy.complex64) >>> gpu_data = gpuarray.to_gpu (נתונים) >>> Plan.Execute (GPU_DATA) >> תוצאה = gpu_data.get () >>> תוצאת הדפסה # doctest: + אליפסה ] כצפוי, יש לנו מערך עם הראשון לא אפס אלמנט, שווה לגודל המערך. בואו עכשיו לבצע את ההופך להפוך. >>> plan.execute (gpu_data, הפוך = true) >>> תוצאה = gpu_data.get () מאז הנתונים אינם מספר שלם, אנחנו לא יכולים פשוט להשוות את זה. אנו פשוט לחשב שגיאה במקום זאת. >> שגיאה = numpy.sum (numpy.Abs (נתונים) - numpy.abs (תוצאה)) / 256 >>> שגיאה <1E-6 TrueThat של טוב מספיק עבור מספרים דיוק יחיד.אירנפקטפיטפלאנס, המכיל fft plat.arguments: FFFPLAN (X, Y = None, Z = ללא, Split = False, Dtype = Numpy.com Spelex64) X, Y, Z: גודל הבעיה. אם z ו / או y אינם מוגדרים, תוכנית 2D או 1D תיווצר. אזהרה: 2D ו 3D תוכניות עם y == 1 או z == 1 אינם נתמכים כרגע.סבליט: אם נכון, התוכנית תתמוך במערכי נתונים נפרדים עם חלקים אמיתיים ודמיוניים: סוג נתונים להשתמש. כרגע רק Computer64 (דיוק יחיד) נתמך. נתמך () לבצע תוכנית עבור מערכי נתונים Interleaved.Arguments: ביצוע (Data_in, Data_Out = None, הפוך = FALSE, BATCH = 1) DATACT_IN: ARRAY.DATA_OUT: פלט מַעֲרָך. אם לא הוגדרו, הביצוע יבוצע במקום והתוצאות יאוחסנו ב- Data_in.inverse: אם TRUE, ההפוך ההופכן יופעל. הם צריכים להיות ממוקמים באופן רצוף ב Data_in.fftplan.Executeplit () לבצע תוכנית עבור מערכי נתונים מפוצלים.רוגים: Executeplit (Data_In_re, Data_Im_im, Data_im_re = None, Data_Out_im = None, Invalse = False, Buts = 1) Data_In_re, Data_Im: מערכי קלט עם חלקי נתונים אמיתיים ודמיוניים בהתאמה. Data_Out_re, Data_Out_im: מערכי פלט. אם לא מוגדר, הביצוע יבוצע במקום והתוצאות יאוחסנו ב- Data_In_re ו- Data_In_im.inverse: אם TRUE, ההפך ההפוך תוצג. הם צריכים להיות ממוקמים ברציפות ב data_in. דרישות: · פייתון


pycudafft תוכנה קשורה

IQFire-Wall.

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

182

הורד