ليرة تركية؛ د: نقوم بتقييم مكونين ممثلين لأعباء عمل الذكاء الاصطناعي، وهما تضمين النص وإنشاء النص، على مثيلين من وحدات المعالجة المركزية المستندة إلى Google Cloud Compute Engine Xeon، وهما N2 وC4. تظهر النتائج باستمرار أن C4 لديه إنتاجية أعلى بمقدار 10x إلى 24x مقارنة بـ N2 في تضمين النص و2.3x إلى 3.6x إنتاجية أعلى مقارنة بـ N2 في إنشاء النص. مع الأخذ في الاعتبار السعر، فإن سعر الساعة لـ C4 يبلغ حوالي 1.3x من N2، وبهذا المعنى، تحافظ C4 على ميزة TCO (إجمالي تكلفة الملكية) 7x ~ 19x على N2 في تضمين النص و1.7x ~ 2.9x ميزة TCO في إنشاء النص. تشير النتائج إلى أنه من الممكن نشر حلول Agentic AI خفيفة الوزن بالكامل على وحدات المعالجة المركزية (CPUs).

مقدمة

يعتقد الناس أن الحدود التالية للذكاء الاصطناعي تكمن في الذكاء الاصطناعي الوكيل. يستخدم النموذج الجديد perceive - reason - action خط أنابيب للجمع بين التفكير المتطور وقدرات التخطيط التكراري في LLM مع تعزيز قوي لفهم السياق. يتم توفير القدرة على فهم السياق من خلال أدوات مثل قواعد البيانات المتجهة ومدخلات أجهزة الاستشعار، لتوفير المزيد من أنظمة الذكاء الاصطناعي المدركة للسياق والتي يمكنها حل المشكلات المعقدة ومتعددة الخطوات بشكل مستقل. علاوة على ذلك، فإن قدرة استدعاء الوظائف الخاصة بـ LLMs تتيح لوكيل الذكاء الاصطناعي اتخاذ الإجراء مباشرة، والذهاب إلى ما هو أبعد من الدردشة التي يقدمها برنامج chatbot. يقدم Agentic AI آفاقًا مثيرة لتعزيز الإنتاجية والعمليات عبر الصناعات.



يقوم الأشخاص بإحضار المزيد والمزيد من الأدوات إلى أنظمة الذكاء الاصطناعي الوكيل، ومعظم هذه الأدوات تعمل الآن على وحدة المعالجة المركزية، وهذا يثير القلق من أنه ستكون هناك تكاليف غير ملحوظة لحركة مرور المضيف والمسرّع في هذا النموذج. في الوقت نفسه، يقوم صانعو النماذج والبائعين ببناء نماذج لغة صغيرة (SLMs) أصغر حجمًا لكنها قوية، وأحدث الأمثلة هي نماذج Meta’s 1B و3B llama3.2، وإنشاء نص متعدد اللغات وإمكانيات استدعاء الأدوات. علاوة على ذلك، تتطور وحدات المعالجة المركزية (CPU) وبدأت في تقديم دعم متزايد للذكاء الاصطناعي، وتم تقديم Intel Advanced Matrix Extensions (AMX)، وهو مسرع موتر جديد للذكاء الاصطناعي، في الجيل الرابع من وحدات المعالجة المركزية Xeon. من خلال تجميع هذه الخيوط الثلاثة معًا، سيكون من المثير للاهتمام رؤية إمكانات وحدة المعالجة المركزية لاستضافة أنظمة الذكاء الاصطناعي الوكيلة بأكملها، خاصة عندما تستخدم SLMs.

في هذا المنشور، سنقوم بقياس مكونين تمثيليين للذكاء الاصطناعي الوكيل: تضمين النص وإنشاء النص ومقارنة تعزيز أداء وحدة المعالجة المركزية من جيل إلى جيل على هذين المكونين. لقد اخترنا مثيل Google Cloud Compute Engine C4 ومثيل N2 للمقارنة. المنطق الكامن وراء ذلك هو: يتم تشغيل C4 بواسطة معالجات Intel Xeon من الجيل الخامس (التي تحمل الاسم الرمزي Emerald Rapids)، وهو أحدث جيل من وحدة المعالجة المركزية Xeon المتاحة على Google Cloud والتي تدمج Intel AMX لتعزيز أداء الذكاء الاصطناعي؛ ويتم تشغيل N2 بواسطة معالجات Intel Xeon من الجيل الثالث (التي تحمل الاسم الرمزي Ice Lake)، وهو الجيل السابق من وحدة المعالجة المركزية Xeon على Google Cloud والتي تحتوي فقط على AVX-512 ولا تحتوي على AMX. سنوضح فوائد AMX.

سوف نستخدم optimum-benchmark، مكتبة Hugging Face الموحدة للواجهات الخلفية والأجهزة المتعددة لقياس الأداء. المؤشر يعمل على optimum-intel الخلفية. optimum-intel عبارة عن مكتبة تسريع Hugging Face لتسريع خطوط الأنابيب الشاملة على معماريات Intel (وحدة المعالجة المركزية ووحدة معالجة الرسومات). الحالات القياسية لدينا هي على النحو التالي:

  • لتضمين النص نستخدم WhereIsAI/UAE-Large-V1 نموذج بطول تسلسل الإدخال 128، ونقوم بمسح حجم الدفعة من 1 إلى 128
  • لإنشاء النص، نستخدم meta-llama/Llama-3.2-3 نموذج بطول تسلسل الإدخال 256 وطول تسلسل الإخراج 32، ونقوم بمسح حجم الدفعة من 1 إلى 64

إنشاء مثيل

ن2

قم بزيارة Google Cloud Console وانقر على create a VM تحت مشروعك بعد ذلك، اتبع الخطوات التالية لإنشاء مثيل واحد لوحدة المعالجة المركزية 96-vcpu والذي يتوافق مع مقبس واحد لوحدة المعالجة المركزية Intel Ice Lake.

  1. اختر N2 في Machine configuration علامة التبويب وتحديد Machine type مثل n2-standard-96. ثم تحتاج إلى تعيين CPU platform كما الصورة أدناه:
    نص بديل
  2. تكوين OS and storage علامة التبويب على النحو التالي:
    نص بديل
  3. احتفظ بالتكوينات الأخرى كإعداد افتراضي
  4. انقر CREATE زر

الآن، لديك مثيل N2 واحد.

ج4

اتبع الخطوات التالية لإنشاء مثيل 96-vcpu الذي يتوافق مع مقبس Intel Emerald Rapids واحد. يرجى ملاحظة أننا نستخدم نفس عدد نواة وحدة المعالجة المركزية بين C4 وN2 في هذا المنشور لضمان وجود معيار لعدد النواة.

  1. اختر C4 في Machine configuration علامة التبويب وتحديد Machine type مثل c4-standard-96. يمكنك أيضًا ضبط CPU platform وقم بتشغيل التوربو الشامل لجعل الأداء أكثر استقرارًا:
    نص بديل
  2. تكوين OS and storage كما N2
  3. احتفظ بالتكوينات الأخرى كإعداد افتراضي
  4. انقر CREATE زر

الآن، لديك مثيل C4 واحد.

إعداد البيئة

اتبع الخطوات التالية لإعداد البيئة بسهولة. من أجل إمكانية التكرار، نقوم بإدراج الإصدار والالتزام الذي نستخدمه في الأوامر.

  1. اتصال SSH بالمثيل
  2. $ git clone https://github.com/huggingface/optimum-benchmark.git
  3. $ cd ./optimum-benchmark
  4. $ git checkout d58bb2582b872c25ab476fece19d4fa78e190673
  5. $ cd ./docker/cpu
  6. $ sudo docker build . -t <your_docker_image_tag>
  7. $ sudo docker run -it --rm --privileged -v /home/<your_home_folder>:/workspace <your_docker_image_tag> /bin/bash

نحن الآن في الحاوية، قم بالخطوات التالية:

  1. $ pip install "optimum-intel[ipex]"@git+https://github.com/huggingface/optimum-intel.git@6a3b1ba5924b0b017b0b0f5de5b10adb77095b
  2. $ pip install torch==2.3.1 torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
  3. $ python -m pip install intel-extension-for-pytorch==2.3.10
  4. $ cd /workspace/optimum-benchmark
  5. $ pip install .[ipex]
  6. $ export OMP_NUM_THREADS=48
  7. $ export KMP_AFFINITY=granularity=fine,compact,1,0
  8. $ export KMP_BLOCKTIME=1
  9. $ pip install huggingface-hub
  10. $ huggingface-cli login، ثم أدخل رمز Hugging Face المميز للوصول إلى نموذج اللاما

المعيار

تضمين النص

تحتاج إلى التحديث examples/ipex_bert.yaml في optimum-benchmark الدليل على النحو التالي للمعايير WhereIsAI/UAE-Large-V1. نقوم بتغيير Numa ملزمة ل 0,1 نظرًا لأن كلا من N2 وC4 لهما نطاقان NUMA لكل مقبس، يمكنك التحقق مرة أخرى من ذلك lscpu.

--- a/examples/ipex_bert.yaml
+++ b/examples/ipex_bert.yaml
@@ -11,8 +11,8 @@ name: ipex_bert
 launcher:
   numactl: true
   numactl_kwargs:
-    cpunodebind: 0
-    membind: 0
+    cpunodebind: 0,1
+    membind: 0,1
 
 scenario:
   latency: true
@@ -26,4 +26,4 @@ backend:
   no_weights: false
   export: true
   torch_dtype: bfloat16
-  model: bert-base-uncased
+  model: WhereIsAI/UAE-Large-V1

ثم قم بتشغيل المعيار:
$ optimum-benchmark --config-dir examples/ --config-name ipex_bert

توليد النص

يمكنك التحديث examples/ipex_llama.yaml على النحو التالي للمعايير meta-llama/Llama-3.2-3.

--- a/examples/ipex_llama.yaml
+++ b/examples/ipex_llama.yaml
@@ -11,8 +11,8 @@ name: ipex_llama
 launcher:
   numactl: true
   numactl_kwargs:
-    cpunodebind: 0
-    membind: 0
+    cpunodebind: 0,1
+    membind: 0,1
 
 scenario:
   latency: true
@@ -34,4 +34,4 @@ backend:
   export: true
   no_weights: false
   torch_dtype: bfloat16
-  model: TinyLlama/TinyLlama-1.1B-Chat-v1.0
+  model: meta-llama/Llama-3.2-3B

ثم قم بتشغيل المعيار:
$ optimum-benchmark --config-dir examples/ --config-name ipex_llama

النتائج والاستنتاج

نتائج تضمين النص

يوفر مثيل GCP C4 إنتاجية أعلى بمقدار 10x إلى 24x تقريبًا مقارنة بـ N2 في الحالات المعيارية التي تتضمن النص.
نص بديل

نتائج إنشاء النص

بشكل متسق، يُظهر مثيل C4 إنتاجية أعلى بمقدار 2.3x إلى 3.6x تقريبًا مقارنة بـ N2 في معيار إنشاء النص. عبر أحجام الدفعات من 1 إلى 16، تكون الإنتاجية أفضل بمقدار 13 مرة دون المساس بزمن الاستجابة بشكل كبير. فهو يتيح خدمة الاستعلام المتزامن دون الحاجة إلى التضحية بتجربة المستخدم.
نص بديل

خاتمة

في هذا المنشور، قمنا بقياس أداء عملين تمثيليين للذكاء الاصطناعي الوكيل على مثيلات وحدة المعالجة المركزية لـ Google Cloud Compute Engine: C4 وN2. تظهر النتائج تعزيزًا ملحوظًا للأداء بفضل تحسينات AMX وقدرات الذاكرة في وحدات المعالجة المركزية Intel Xeon. أصدرت Intel معالجات Xeon 6 ذات النوى P (التي تحمل الاسم الرمزي Granite Rapids) منذ شهر واحد، وهي توفر تعزيزًا يصل إلى 2x في الأداء في Llama 3. نعتقد أنه باستخدام وحدة المعالجة المركزية Granite Rapids الجديدة، يمكننا استكشاف نشر حلول Agentic AI خفيفة الوزن بالكامل على وحدة المعالجة المركزية، لتجنب الحمل المكثف لحركة مرور المضيف والمسرّع. سنقوم بقياسه بمجرد حصول Google Cloud Compute Engine على مثيل Granite Rapids والإبلاغ عن النتائج.

شكرا للقراءة!

شاركها.
اترك تعليقاً