Yaliyomo
- 1. Utangulizi
- 2. Msingi na Hamasa
- 3. Ubunifu wa Splitwise
- 4. Utekelezaji wa Kiufundi
- 5. Matokeo ya Majaribio
- 6. Uchambuzi na Majadiliano
- 7. Matumizi ya Baadaye
- 8. Marejeo
1. Utangulizi
Mifano mikubwa ya lugha inayotengeneza (LLMs) imebadilisha kabisa usindikaji wa lugha asilia, lakini mahitaji yao ya kihesabu yanaweka changamoto kubwa kwa uchanganuzi wenye ufanisi. Njia ya Splitwise inashughulikia changamoto hizi kwa kutambua na kutumia sifa tofauti za kihesabu za vipindi viwili kuu katika uchanganuzi wa LLM.
2. Msingi na Hamasa
2.1 Vipindi vya Uchanganuzi wa LLM
Uchanganuzi wa LLM una vipindi viwili tofauti:
- Kipindi cha Hesabu ya Haraka: Usindikaji sambamba wenye nguvu wa kihesabu wa ishara zote za mwingizo
- Kipindi cha Uzalishaji wa Ishara: Uzalishaji wa mfuatano wenye ukubwa wa kumbukumbu wa ishara za pato
2.2 Vikwazo vya Vifaa
Ulinganisho wa Vipimo vya GPU
A100 dhidi ya H100: Ongezeko la hesabu la 3.43× lakini uboreshaji wa upana wa ukumbusho wa 1.64× pekee
GPU za kisasa zinaonyesha mizani isiyolingana kati ya nguvu ya kihesabu na uwezo wa kumbukumbu, na hii inasababisha kutofanikiwa kwa uchanganuzi wa LLM.
3. Ubunifu wa Splitwise
3.1 Mwonekano wa Usanifu
Splitwise inatekeleza hesabu ya haraka na uzalishaji wa ishara kwenye mashine tofauti zilizoboreshwa kwa mahitaji ya kila kipindi.
3.2 Usimamizi wa Rasilimali Maalum kwa Kipindi
GPU zenye nguvu za kihesabu (H100) kwa kipindi cha haraka, GPU zenye gharama nafuu kwa kipindi cha uzalishaji wa ishara.
4. Utekelezaji wa Kiufundi
4.1 Msingi wa Kihisabati
Mchakato wa umakini katika watengenezaji wa mabadiliko unaweza kuwakilishwa kama:
$Umakini(Q, K, V) = softmax(\\frac{QK^T}{\\sqrt{d_k}})V$
Ambapo $Q$, $K$, $V$ zinawakilisha maswali, funguo, na maadili kwa mtiririko huo, na $d_k$ ni mwelekeo wa funguo.
4.2 Utekelezaji wa Msimbo
class SplitwiseScheduler:
def schedule_request(self, request):
if request.phase == "prompt":
return self.assign_to_prompt_machine(request)
else:
return self.assign_to_token_machine(request)
def transfer_state(self, prompt_output, token_machine):
# Uhamisho wa hali wenye ufanisi kwa kutumia RDMA
return token_machine.load_state(prompt_output)
5. Matokeo ya Majaribio
Splitwise inapata:
- Mafanikio makubwa zaidi ya 1.4× kwa gharama iliyopungua kwa 20%
- Mafanikio makubwa zaidi ya 2.35× chini ya bajeti sawa ya nguvu na gharama
- Uboreshaji wa uthabiti wa ucheleweshaji na matumizi ya rasilimali
6. Uchambuzi na Majadiliano
Splitwise inawakilisha maendeleo makubwa katika uboreshaji wa uchanganuzi wa LLM kwa kushughulikia kutolingana kwa kimsingi kati ya mahitaji ya kihesabu na uwezo wa vifaa. Njia hii inachota msukumo kutoka kwa kanuni za mifumo iliyogawanyika sawa na zile zinazotumika katika MapReduce na mifumo mingine ya usindikaji sambamba. Kwa kutambua kwamba kipindi cha uzalishaji wa ishara kina ukubwa wa kumbukumbu badala ya kuwa na kikomo cha hesabu, Splitwise inawezesha mgao wa rasilimali wenye ufanisi zaidi unaoendana na mahitaji halisi ya kihesabu ya kila kipindi cha uchanganuzi.
Kazi hii inajengwa juu ya kanuni zilizowekwa katika usanifu wa kompyuta, hasa tatizo la ukuta wa kumbukumbu lililotambuliwa na Wulf na McKee mnamo 1995, ambalo lilionyesha tofauti inayoongezeka kati ya kasi ya kichakataji na utendaji wa kumbukumbu. Mchakato wa umakini wa usanifu wa mtengenezaji mabadiliko, ulioanzishwa kwa mara ya kwanza katika karatasi ya Vaswani et al. ya 2017 "Umakini ndio Unachohitaji," kwa asili huunda vipindi hivi viwili tofauti vya kihesabu, lakini juhudi za awali za uboreshaji zililenga hasa ukandamizaji wa mfano na upimaji badala ya mgawanyiko wa usanifu.
Ikilinganishwa na utekelezaji wa kawaida wa umoja, njia ya mgawanyiko wa vipindi ya Splitwise inaonyesha jinsi vifaa maalum vinaweza kutumiwa kwa ufanisi zaidi, sawa na jinsi makundi ya TPU ya Google yanavyoboreshwa kwa kazi maalum za ML. Uboreshaji wa mafanikio makubwa ya 1.4× na kupunguzwa kwa gharama kwa 20% ni muhimu hasa kwa kuzingatia kiwango kikubwa cha utekelezaji wa kisasa wa LLM, ambapo hata uboreshaji wa asilimia ndogo hubadilika kuwa akiba kubwa ya kiutendaji.
Mbinu hii inaendana na mienendo ya hivi karibuni katika hesabu tofauti, ambapo mifumo inachanganya aina tofauti za vichakataji vilivyoboreshwa kwa kazi maalum. LLM zinaendelea kukua kwa ukubwa na utata, njia kama Splitwise zitakuwa muhimu zaidi kwa utekelezaji endelevu wa AI, zikishughulikia maswala ya kiuchumi na kimazingira yanayohusishwa na uchanganuzi wa mfano wa kiwango kikubwa.
7. Matumizi ya Baadaye
Maelekezo ya baadaye ni pamoja na:
- Uboreshaji wa uchanganuzi wa mfano wa hali nyingi
- Utekelezaji wa hesabu za ukingoni
- Mgawanyiko wa rasilimali unaobadilika kwa wakati halisi
- Ushirikiano na usanifu mpya wa vifaa
8. Marejeo
- Vaswani, A., et al. "Umakini ndio Unachohitaji." NeurIPS 2017.
- Brown, T., et al. "Mifano ya Lugha ni Wanafunzi Wachache." NeurIPS 2020.
- Wulf, W. A., & McKee, S. A. "Kugonga ukuta wa kumbukumbu: matokeo ya wazi." ACM SIGARCH Habari za Usanifu wa Kompyuta, 1995.
- Kampuni ya NVIDIA. "Usanifu wa GPU ya Kiini cha Tensor ya NVIDIA H100." 2022.
- Dean, J., & Ghemawat, S. "MapReduce: Usindikaji wa data uliorahisishwa kwenye makundi makubwa." OSDI 2004.