H100 80GB 2°³ º´·Ä·Î »ç¿ë½Ã ó¸® ¼Óµµ ÀúÇ×

   Á¶È¸ 1847   Ãßõ 0    

안녕하세요

아래 내용 해결을 위해서, 비용을 지불하려고 합니다.

문제 해결이 가능한 분은  연락 주시기 바랍니다.

01*-****-****

대략적인 내용을 설명 드리자면,

HPE  DL380aG11  (2U장비임에도 GPU 4EA 까지 장착 가능) H100 80GB   2EA를 장착 하였습니다.

한개 씩 돌리면 성능이 잘  나오고 있으나 두 개를 동시에 돌리면 처리 속도가 매우 느립니다.

고객이 하드웨어를 의심해서  DL380aG11  이외에  다른   DL380G11 ,   ASUS  4세대  CPU 서버에서 테스트를 하였으나, 결과는  모두 동일 합니다.

GPU 장애는 아닙니다.  저희가  GPU 서버를 많이 납품 하였습니다. 보통 GPU를 사용 하는 고객측에서  소프트웨어에서 수정 해주어서 문제를 해결 하는데...

일단  브릿지로 연결해서 테스트 해보려는데, 결과는 좋지 않을거 같습니다.


그동안   테스트 내용  아래 정리해서 알려 드리니,  해결이 가능할거 같은신분은  연락 주시기 바랍니다.


  • 1.    OS : Ubuntu 22.04.2
  • 2.    CUDA Version : 12. 2
  • 3.    H100 Drive Version : 535.129.03
  • 4.    사용중인 프로그램 : Python 3.11.X
  • 5.   처리 속도 H100 80G * 2EA
  • Llama-3-8B처리시간 : 2.4
  •  
  • H100 80G * 1EA
  • Llama-3-8B 처리 시간 : 0.5초
  •  
  • 비교군 GPU A100 80G
  • A100 80G * 2EA
  • Llama-3-70B 처리 시간 : 2.7초
  •  
  • A100 80G * 1EA
  • Llama-3-8B 처리 시간 : 1.2초
  •  
  • 한 개를 돌렸을때는 H100 GPU가 A100 GPU 보다 2배가 빠른데
  • 2장을 같이 돌렸을 때는 A100 GPU는 2.7초 이고 H100 GPU는 2.4초가 나오고 있습니다.
  •  

테스트 한 코드는 아래와 같습니다.

 

from transformers import AutoTokenizer, AutoModelForCausalLM, TextIteratorStreamer, TextStreamer

import torch

from threading import Thread

import gradio as gr

import time

#import accelerate_speedup

 

torch.manual_seed(42)

 

model_id = "meta-llama/Meta-Llama-3-70B-Instruct"

#model_id = "meta-llama/Meta-Llama-3-8B-Instruct"

 

tokenizer = AutoTokenizer.from_pretrained(model_id)

#max_memory_mapping = {0: "80GB", 1: "80GB"}

model = AutoModelForCausalLM.from_pretrained(

    model_id,

    torch_dtype=torch.bfloat16,

    device_map="auto",

    #device_map="balanced_low_0",

    trust_remote_code=True,

    attn_implementation="flash_attention_2",

    low_cpu_mem_usage=True

    #max_memory=max_memory_mapping

).eval()

 

terminators = [

    tokenizer.eos_token_id,

    tokenizer.convert_tokens_to_ids("<|eot_id|>")

]

 

 

### base inference

def chat(question):

    messages = [

        #{"role": "system", "content": "You are AI chatbot. You are honest, do not harm others, and help users."},

        {"role": "system", "content": "Please try to provide useful, helpful answers."},

        {"role": "user", "content": question},

    ]

   

    input_ids = tokenizer.apply_chat_template(

        messages,

        add_generation_prompt=True,

        return_tensors="pt"

    ).to(model.device, non_blocking=True)

   

    outputs = model.generate(

        input_ids,

        max_new_tokens=1024,

        eos_token_id=terminators,

        do_sample=True,

        temperature=0.05,

        top_p=0.95,

    )

    response = outputs[0][input_ids.shape[-1]:]

    #print(tokenizer.decode(response, skip_special_tokens=True))

    return tokenizer.decode(response, skip_special_tokens=True)

 

 

response_times = []

for _ in range(100):

    start_time = time.time()

    #tmp = chat('hello.')

    tmp = chat('hello!')

    #tmp = chat('Testing. Please answer in 10,000 characters.')

    end_time = time.time()

    print((end_time - start_time))

    response_times.append(end_time - start_time)

 

print(f"Average Response Time: {sum(response_times) / len(response_times):.2f} seconds")

 


ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
¼úÀÌ 06-11
°°Àº CPU ·¹Àο¡ ²Å¾Æ¼­ 8¹è¼ÓÀ¸·Î ÂÉ°³Áø°Ô ¾Æ´Ò±î »ý°¢µå´Âµ¥...
°¢°¢ CPU°¡ ¹èÁ¤µÈ ÀͽºÇÁ·¹½º ½½·Ô¿¡ ÀåÂøÇÑ°ÇÁö°¡ °ü°ÇÀÏ°Å °°¾Æ¿ä.
À§ÀÇ Äڵ带 Å×½ºÆ® ÇÒ ¼ö Àִ ȯ°æÀÌ ¾Æ´Ï°í, µö·¯´×¿¡¼­ ¼Õ ¶©Áö ¿À·¡µÇ¾î¼­ ±×³É ´À³¦À¸·Î ºÃ½À´Ï´Ù.

Á¦ °æÇè¿¡ ¸î¸î ÆĶó¹ÌÅÍ ¼³Á¤À» º¯°æÇÏ´Â °ÍÀ» ÁÖ¼®Ã³¸® ¿©ºÎ·Î¸¸ ÇÒ °æ¿ì ½Ç¼öÇÏ´Â °æ¿ì°¡ ¸¹¾Ò½À´Ï´Ù.
for ¹®À¸·Î µ¹¸®¸é ÀÌÀü º¯¼ö°ªÀÌ ³²¾Æ ÀÖ¾î ¿À·ù°¡ ³ª´Â °æ¿ìµµ ¸¹±¸¿ä.

À§ÀÇ Äڵ嵵 º¸¸é device_map°ú max_memory ºÎºÐÀÌ ÁÖ¼® 󸮸¦ º¯°æÇϸ鼭 Å×½ºÆ®ÇÏ´Â °ÍÀ¸·Î º¸ÀÔ´Ï´Ù.

´Ù¾çÇÑ Á¶°Ç¿¡¼­ ÃÊ´ÜÀ§·Î ¼º´ÉÀ» Æò°¡ÇØ¾ß ÇÏ´Â »óȲÀ̶ó¸é, ÇØ´ç ¼³Á¤ ºÎºÐ¸¸ Á¤È®ÇÏ°Ô ¼öÁ¤ÇÑ ÆÄÀÏ 4°³¸¦ ¸¸µé¾î¼­ È®ÀÎÇØ º¸´Â °ÍÀÌ ÁÁÀ» °Í °°½À´Ï´Ù.

´ëºÎºÐ °á°ú°¡ 3ÃÊ À̳»¿¡ ³ª¿À¸é nvidia-smi µîÀ¸·Î GPU »óŸ¦ º¼ ¶§¿¡ ½Ã°£ÀÌ ³Ê¹« ª±â ¶§¹®¿¡ ´õ ±ä ½Ã°£ µ¿¾È Å×½ºÆ® ÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â °ÍÀÌ ÁÁÀ» °Í °°½À´Ï´Ù.
°ËÀºÄá 06-12
Vllm Å×½ºÆ®Çغ¸½ÃÁÒ


QnA
Á¦¸ñPage 410/5684
2015-12   1493999   ¹é¸Þ°¡
2014-05   4957560   Á¤ÀºÁØ1
01-11   1846   gusoong
2022-07   1846   2CPUÃÖÁÖÈñ
2021-11   1846   ´ÙÇÔ²²½Î´Ù±¸
2023-03   1847   Astarot
2021-02   1847   Àü¼³¼ÓÀǹ̡¦
2022-05   1847   2CPUI±è¼¼ÈÆ
2023-10   1847   È­¶õ
2023-09   1847   ÀüÁø
2021-03   1847   ³ë¸»
2023-02   1847   È¥ÀÚ°¡´Â±æ
05-10   1847   Ãʺ¸ÀÚ¿¡¿ë
2023-07   1848   epowergate
2022-09   1848   ¸·¿ï¾ú¾î¿ä
2023-03   1848   ÆäÆ®¸¯
2021-12   1848   º½ºÕº½
2023-01   1848   jake
2023-06   1848   DB´ººñ
2020-10   1848   yummy
2023-10   1848   pumkin
2022-04   1848   ±èÁ¦¿¬