Fallet för ett Qubic Stablecoin - Del 4: Snabbt, Snabbare, Qubic
Vi förklarar skillnaden mellan överföringar och transaktioner och guidar läsarna genom olika överföringsscenarier för att visa Qubics imponerande genomströmning. Genom att lyfta fram verkliga hastighetstester visar vi vad som skiljer Qubic från andra blockkedjor.
Qsilver, 22 augusti 2024.
Sammanfattning
I de tre första delarna av den här serien har vi lagt grunden för vår vision om en Qubic-baserad stablecoin. Vi har belyst den nuvarande bristen på ett övertygande svar på den väsentliga frågan "varför bygga på Qubic?", hur SteCos nuvarande marknadsföringsinsatser är felriktade och föreslagit ett strategiskt skifte mot att positionera Qubic kring"ultrahög prestanda", som en katalysator för ekosystemets tillväxt och långsiktiga framgång.
Inledning
Nu vänder vi vårt fokus mot en avgörande teknisk fråga: Hur snabb är Qubic? Denna fråga är inte okomplicerad. För att fullt ut förstå Qubics prestanda och dess konsekvenser för vår vision om stablecoin måste vi först klargöra några nyckelbegrepp. Ha tålamod med oss när vi förklarar skillnaderna mellan transaktioner och överföringar, överföringsscenarier och metoder för att generera överföringar. I slutet av det här inlägget bör du ha ett gediget grepp om hur Qubics hastighet står sig mot konkurrenterna och hur vi planerar att utnyttja Qubic för att bygga den snabbaste stablecoin som världen någonsin har skådat.
Innan vi börjar
Nyckelbegrepp
Protokollskiktet hänvisar till blockkedjesystemets kärnskikt och definierar dess regler och mekanismer. Här är en transaktion:
- En transaktion är en enskild operation som innebär en förändring av tillståndet i huvudboken.
- En överföring är en deloperation inom en transaktion som flyttar tillgångar från en adress till en annan.
Applikationslagret avser det lager där användare interagerar med blockkedjan genom applikationer (användargränssnitt, dApps och smarta kontrakt). Här:
- En överföring av kryptovaluta är den vanligaste typen av transaktion, där en användare överför ett belopp av kryptovaluta till en annan användare.
- Andra typer av transaktioner inkluderar exekvering av smarta kontrakt, orakeldataförfrågningar, statskanalavvecklingar, tokenöverföringar, token minting/förbränning, skapande/överföring av Non-Fungible Tokens (NFT), staking, lån/utlåning, växlingsorder, röstnings-/styråtgärder, uppdateringar av kedjestyrning, belöningar/utdelningar, identitetsverifieringar, datalagring/modifiering, cross-chain-operationer ... en öppen lista som endast begränsas av utvecklarnas fantasi och som därför varierar beroende på varje blockchain.
"Överföring" kan vara förvirrande eftersom dess betydelse ändras med sammanhanget:
- På protokollnivå är en överföring en underoperation inom en transaktion.
- På applikationsnivå är en överföring en typ av transaktion av många.
För att göra det hela ännu mer förvirrande kan en enda transaktion, t.ex. ett smart kontrakt, utlösa flera överföringar. Till exempel innebär ett smart lönekontrakt som delar ut 1 QU vardera till 100 anställda 100 överföringar, som alla initieras av en enda transaktion.
Designskillnader mellan blockkedjor bidrar också till denna förvirring. För att låna på Ethereum krävs till exempel ett smart kontrakt, men på Celo är det en inbyggd transaktionstyp på protokollnivå.
Denna komplexitet överväldigar slutanvändarna. Eftersom överföringar av kryptovalutor är den vanligaste transaktionstypen slutar det med att de likställer båda (som i "entransaktion tjänar till att överföra krypto!"). Det spelar ingen roll att transaktioner kan mycket mer. Användare använder en term på protokollnivå för att beskriva en fördel på applikationsnivå.
Scenarier för överföring
Låt oss skilja mellan följande överföringsscenarier:
- En-till-en (1-till-1): En enda transaktion skickar en tillgång från en adress till en annan adress. T.ex. en överföring mellan konton, en e-handelsbetalning.
- En-till-många (1-till-många): En enskild transaktion skickar en tillgång från en adress till flera adresser. T.ex. utbetalning av förmåner, löneutbetalning.
- En-till-alla (1-to-All): En enda transaktion skickar en tillgång från en adress till alla adresser i en kedja. T.ex. universell basinkomst (UBI), aidrops.
Generering av överföringar
Med tanke på deras inverkan på prestanda, låt oss skilja på hur överföringar genereras:
- Transaktionsgenererad: En överföring som genereras från en transaktion (Tx).
- Smart kontraktsgenererad: En överföring som genereras från ett smart kontrakt (SC). Hur många överföringar som genereras beror på vilken typ av smart kontrakt som används.
Parametrar för nätverk
Låt oss slutligen definiera viktiga nätverksparametrar som påverkar prestandan:
- Tick-varaktighet (tDur): En tidsenhet under vilken en uppsättning transaktioner behandlas och slutförs. Nuvarande tick-varaktighet är cirka 2,5 sekunder.
- Transaktioner per tick (TxPT): Det maximala antalet transaktioner som kan behandlas under ett enda tick. Nuvarande antal transaktioner per tick är 1 024.
Besluta vad som ska mätas
I kryptovärlden mäts blockkedjans prestanda vanligtvis på protokollnivå med hjälp av mätvärdet Transactions Per Second (TPS eller TxPS). Detta mäter antalet transaktioner - en förändring av tillståndet i huvudboken - som en blockkedja kan bearbeta på en enda sekund. Till exempel har TON uppnått 104 715 TxPS genom att utnyttja sharding, medan Ethereum syftar till att överstiga 100 XNUMX TxPS med hjälp av rollups.
Qubic utmärker sig inte i TxPS, men det är okej. Ur ett marknadsföringsperspektiv är TxPS ett mått som vänder sig inåt - mer relevant för kryptoteam och investerare som tycker om att skryta om sin blockkedjas kapacitet i kryptofeider. Men det som verkligen betyder något för slutanvändarna är om de kan slutföra en betalning direkt, även när tusentals andra försöker göra samma sak i exakt samma ögonblick. Med andra ord bryr de sig inte om transaktioner per sekund (TxPS) utan om överföringar per sekund (TfPS). Och här, för sömlösa betalningsupplevelser - kryptoöverföringar på applikationsnivå -, där det verkligen betyder något, bär Qubic kronan. Eller gör den det?
Prestanda idag
Med en förståelse för nyckelbegrepp (transaktioner vs. överföringar), mätvärden (TxPS vs. TfPS), överföringsscenarier (1-till-1, 1-till-många, 1-till-alla), överföringsgenereringsmetoder (Tx-genererad vs. SC-genererad) och nätverksparametrar (tick-varaktighet och transaktioner per tick) kan vi nu utforska hur snabbt Qubic arbetar på applikationsnivå. När vi undersöker de olika kombinationerna uppmuntrar vi dig att tänka på Qubic som en motor som växlar mellan olika växlar.
I den här tabellen sammanfattas resultaten av våra prestandatester. För tydlighetens skull presenterar vi tabellen med konstanta nätverksparametrar, även om tDur i praktiken varierade från test till test:
Utrustning | tDur | TxPT | Scenario | Gen | S. Kontrakt | Txs | TfPS |
#1 | 2.5 | 1024 | 1 till 1 | Tx | N/A | 410 | 410 |
#2 | 2.5 | 1024 | 1 till många | SC | QUTIL-1 | ~10,250 | 410 |
#2 | 2.5 | 1024 | 1-till-många | SC | QUTIL-2 | ~16,525 | 410 |
#3 | 2.5 | 1024 | 1-till-många | SC | AIRDROP-1 | 1,024 | 150k |
#3 | 2.5 | 1024 | 1-till-många | SC | AIRDROP-2 | 1,024 | 1M |
#4 | 2.5 | 1024 | 1 till alla | SC | AIRDROP-3 | 4 | 20M |
#5 | 2.5 | 1024 | 1-till-många | SC | QUTIL-3 | 1 | 55M |
Första växeln
I första växeln, utan några smarta kontrakt inblandade, genererar varje transaktion direkt en överföring. För att maximera antalet överföringar måste vi maximera antalet transaktioner. Med nuvarande nätverksparametrar kan Qubic bearbeta 410 TxPS (1 024 TxPT / 2,5 tDur). Denna prestanda är betydligt högre än Bitcoin (3-7) och Ethereum (15-30), men fortfarande blygsam jämfört med Algorand (1 200), Avalanche (4 500) eller Solana (65 000).
Andra växeln
I andra växeln använder vi QUTIL SC (tidigare Sendmany SC) som gör att du kan batcha 25 1-till-Many-överföringar inom en enda transaktion. Detta ökar TfPS till 10 250 (410 TfPS * 25), vilket sätter Qubic i nivå med de flesta andra kedjor, men bara i scenariot med 1 till många överföringar.
En variant av andra växeln (se QUTIL-2 i tabellen ovan) innebär att man kedjar QUTIL SC-exekveringar. Den första transaktionen utlöser ett QUTIL SC-anrop för 25 betalningar, vilket genererar 25 överföringar. Varje överföring utlöser i sin tur ytterligare 25 QUTIL-körningar, vilket skapar en kaskadeffekt. Efter tre iterationer (25 x 25 x 25) resulterar denna process i 15 625 överföringar. Eftersom varje överföring måste behandlas inom en transaktion begränsas vi dock fortfarande av gränsen på 1024 TxPT. Följaktligen tar det 16 helt mättade ticks (15 625 Txs / 1 024 TxPS), eller 40 sekunder (16 ticks * 2,5 tDur) att slutföra hela processen under optimala förhållanden. Sammanfattningsvis ökar denna metod inte den totala genomströmningen och är endast tillämplig på överföringsscenariot 1-to-Many.
Tredje växeln
I tredje växeln använder vi AIRDROP SC som gör att du kan skicka samma mängd till varje adress i spektrumet- en lista över alla Qubic-adresser som lagras i RAM-minnet på beräkningsnoderna. Eftersom mycket få användningsfall (om ens något) kräver att samma belopp skickas till alla Qubic-adresser (~450k), har överföringsscenariot 1 till alla begränsad tillämplighet i verkligheten. Det är dock fortfarande användbart för att testa Qubic-motorn under verkliga förhållanden, eftersom vi mäter den totala bearbetningstiden (tick-bearbetning + SC-bearbetning).
I vårt första test på testnätet (AIRDROP-1 i tabellen ovan) skapade vi 1 024 airdrops (till ~450 000 adresser vardera) per tick, vilket fullt ut utnyttjade de 1 024 Tx som tillåts per tick. Det teoretiska målet på 460,8 miljoner TfPS (1 024 TxPT * 450 000 adresser) resulterade i "bara" 150 000 TfPS. Även om detta resultat kan verka nedslående avslöjar det att vi antingen hittade ett fel eller att Qubic inte är optimerat för att bearbeta många instanser av samma smarta kontrakt samtidigt, särskilt på testnet. Dessa resultat är dock värdefulla eftersom de belyser prestandapåverkan under sådana förhållanden.
För ett korrekt tredje växeltest (AIRDROP-2) ändrade vi AIRDROP SC för att överföra 1 QU istället för en token. Detta resulterade i "endast" 1M TfPS, återigen på grund av användningen av virtuella testnet-maskiner (istället för bare metal) och för mycket SC-overhead.
Fjärde växeln
I den fjärde växeln genomförde vi ett anpassat, helt artificiellt test (AIRDROP-3) där fyra luftdroppar skapades, var och en med spektrumadresser som hanterade 100 olika överföringar för att bestämma maximal uppnåelig prestanda. Vanligtvis överträffar mainnet testnet på grund av dess mer högpresterande system och användningen av flera noder snarare än bara en eller två. För att nära simulera förhållandena i mainnet använde vi ett testnät med bara metall. Mot det teoretiska målet på 180M TfPS (4 airdrops * 450k adresser * 100 överföringar per adress) uppnådde vi 20M TfPS. Denna överföringshastighet är hållbar under hela epoken, inte bara en topprestanda, vilket indikerar robustheten i Qubics genomströmningskapacitet. Även om genomströmningen är häpnadsväckande (det skulle bara ta ett par timmar att skicka QU till alla i världen), är den specifik för överföringsscenarier med 1 till alla och saknar tillämpbarhet i verkligheten.
Femte växeln
Ett nyligen utfört test av Qubics Core Development Team registrerade 55M TfPS. Detta uppnåddes genom ett annat anpassat, helt artificiellt test (QUTIL-3), med ett anpassat QUTIL-smartkontrakt i en slinga, med fokus enbart på CPU-tid. Tekniskt sett var den femte växeln ett överföringsscenario med 1 till många (inte 1 till alla). Men eftersom adresserna hämtades från en fördefinierad pool som genererades i SC (inte från faktiska transaktioner) och beloppen som skulle överföras genererades slumpmässigt i SC (inte från faktiska transaktioner), saknar detta test också tillämpbarhet i verkligheten.
För att förstå skillnaden mellan våra 20M-resultat och deras 55M-resultat kan man tänka på dessa tester i termer av "flygtid". Valis tester mätte den tid som krävdes från gate till gate (tick processing + smart contract processing), medan Qubics kärnteam endast mätte den faktiska tiden i luften (smart contract processing).
En ojämn krona
Qubics nuvarande överföringsprestanda i scenarierna 1-to-Many/All transfer är i enklass försig. Skillnaden är så stor att Come-from-Beyond offentligt har spekulerat i om Qubics smarta kontraktsmotor är mer performant än motorerna i alla andra kryptovalutor tillsammans. Medan andra diskuterar skalningslösningar för att nå tusentals transaktioner, hanterar Qubic enkelt miljontals överföringar utan behov av skalningslösningar för lager 1 (sharding) eller lager 2 (rollups, sidokedjor eller statskanaler). Qubics nuvarande överföringsprestanda i det vanligaste 1-till-1-överföringsscenariot, det som behövs i de flesta verkliga fall, inklusive en stablecoin, är dock inget att skryta med (410 TfPS).
Vid det här laget kanske mindre tekniska läsare känner att de har blivit lurade av grandiosa påståenden om "miljontals" TfPS bara för att upptäcka att sådana mätvärden, på fjärde och femte växeln, tillhör artificiella förhållanden, begränsade mätningar och osannolika överföringsscenarier, utan någon tillämpbarhet i verkligheten. Det är viktigt att förstå att prestandatestning krävs för systemoptimering. Dessutom har olika team som arbetar med Qubic olika mål och därmed olika testbehov. Valis är fokuserat på applikationsnivå och testar närmare verklig prestanda (~20M). Qubics Core Development Team är inriktat på protokollnivån och testar intern tid (~55M).
Prestanda i morgon
Varför förespråkar Valis en ompositionering av Qubic som en "ultrahögpresterande" kedja, förkroppsligad i en Qubic stablecoin, om prestandan i 1 till 1 överföringsscenarier är blygsam?Eftersom vi är övertygade om att Qubics 1-till-1-prestanda kommer att förbättras radikalt inom en snar framtid, tack varebidragen från två team.
Qubics kärnteam
Qubic är känt för sina oortodoxa, prestandadrivna val, till exempel bare metal-servrar, körning helt på RAM och undvikande av operativsystem och virtuella maskiner. Dessa beslut, i kombination med ständigt ökande hårdvarukrav, gör att Qubic skiljer sig från mängden.
Den första prioriteringen på Qubic Core Teams färdplan är att uppnå en stabil ticktid på 1-2 sekunder. I slutändan kan ticks accelereras till 5 per sekund, vilket ger en 12,5x ökning av prestanda genom att minska ticktiden från 2,5 sekunder till 0,2 sekunder.
RAM-kraven för beräkningsnoderna kommer att öka till 1 TB den 4 september och till 2 TB den 4 december. I takt med att RAM-minnet ökar är det inte långsökt att tänka sig 4 096 TxPT.
Med snabbare och större ticks börjar saker och ting se annorlunda ut. Qubic kommer att gå från 410 TxPS (1 024 TxPT / 2,5 tDur) till 20 480 TxPS (4 096 TxPT / 0,2 tDur). Dessa siffror är optimistiska; när genomströmningen ökar kan andra flaskhalsar uppstå, men ni förstår vad jag menar:
Utrustning | tDur | TxPT | Scenario | Gen | S. Kontrakt | Txs | TfPS |
#1 | 0.2 | 4096 | 1 till 1 | Tx | N/A | 20,480 | 20,480 |
#2 | 0.2 | 4096 | 1-till-många | SC | QUTIL | ~10,250 | 20,480 |
#3 | 0.2 | 4096 | 1-till-många | SC | AIRDROP | 1 | M? |
#4 | 0.2 | 4096 | 1 till alla | SC | AIRDROP | 1 | M? |
Tycker du att det här går snabbt? Dags att spänna fast säkerhetsbältet.
Valis-teamet
Qubic uppnår mind-blogging-prestanda i SC-genererade TfPS, men hittills har alla SC:er fokuserat på överföringsscenariot 1-till-många. Vad skulle hända om vi kunde utnyttja Qubics SC:er i det svåraste riktmärket för att få maximal hastighet, överföringsscenariot 1 till 1?
Qubic | Utan SC | Med SC |
1 till 1 | Blygsam | Okänd |
1-till-många | N/A | Snabbast |
Precis som Ethereum minskade gaskostnaderna med L2 rollups, kan ett liknande tillvägagångssätt tillämpas på Qubic. Även om Qubic inte har några gaskostnader att minimera är vårt mål att maximera antalet 1-till-1-överföringar som kan kodas in i en enda transaktion.
Vi har identifierat en metod som kan rulla upp 26 till 95 1-till-1-överföringar per SC Tx med den nuvarande gränsen på 1 024 TxPT. Vi förväntar oss att denna kapacitet snabbt kommer att öka från 26x till 95x tack vare Qubics effektiva adressåteranvändning. Med en konservativ uppskattning på 90x motsvarar detta ~40k TxPS med nuvarande nätverksparametrar. Med en 12,5x ökning av nätverkskapaciteten kan detta nå 1,8 miljoner TxPS i 1 till 1 överföringsscenarier.
Utrustning | tDur | TxPT | Scenario | Gen | S. Kontrakt | Txs | TfPS |
#2 | 2.5 | 1024 | 1 till 1 | SC | VROLLUP-26 | 410 | 10,660 |
#2 | 2.5 | 1024 | 1 till 1 | SC | VROLLUP-90 | 410 | 38,950 |
#2 | 0.2 | 4096 | 1 till 1 | SC | VROLLUP-26 | 20,480 | 532,480 |
#2 | 0.2 | 4096 | 1 till 1 | SC | VROLLUP-90 | 20,480 | 1,843,200 |
Knäböj inför kronan
Bidragen ovan kommer att göra Qubic till den obestridda ledaren inom TfPS, över alla överföringsscenarier och kedjor. "The Fastest" är ett kort, rakt och kraftfullt marknadsföringspåstående med stor genomslagskraft i kryptovärlden.
Positioneringen "ultrahög prestanda" besvarar den kritiska varför-frågan så högt och tydligt att den på egen hand kan locka entreprenörer från alla vertikaler att bygga vidare på Qubic. I kombination med världens första säkra, transparenta, konsekventa, omedelbara, skalbara och kostnadsfria stablecoin har det en verklig chans att göra Qubic till ett kraftverk för ekonomisk stabilitet, likviditet och DeFi.
"uPoW for AI" är nytt och glänsande och vackert, men glänsande varar inte. För att lyckas behöver Qubic faktiska kunder som vill och kan köpa vår produkt.
Om du tycker att Qubic är vackert, borde du se det i en krona.
Kommer upp: Valis förslag
I den sista delen av vår serie kommer vi att beskriva vår plan för att väcka liv i en Qubic-baserad stablecoin. Vi kommer att täcka vår insamlingsstrategi, potentiella kapitalkällor och hur vi planerar att använda medlen. Vi kommer att sätta upp tydliga mål och förklara hur detta initiativ kommer att driva långsiktigt värde och tillväxt för Qubics ekosystem.
Läs serien "Fallet för en Qubic Stablecoin”
- Fallet för en Qubic Stablecoin - Del 1: Varför Frågan
- Fallet för en Qubic Stablecoin - Del 2: Marknadsföring av Qubic
- Fallet för en Qubic Stablecoin - Del 3: Det Bästa Alternativet
- Fallet för en Qubic Stablecoin - Del 4: Snabb, Snabbare, Qubic
- Fallet för en Qubic Stablecoin - Del 5: Växande Ekosystemet
För de senaste uppdateringarna, gå med i Valis Discord, följ oss på X och bokmärk vår blogg.
På denna sida
- Fallet för ett Qubic Stablecoin - Del 4: Snabbt, Snabbare, Qubic
- Sammanfattning
- Inledning
- Innan vi börjar
- Nyckelbegrepp
- Scenarier för överföring
- Generering av överföringar
- Parametrar för nätverk
- Besluta vad som ska mätas
- Prestanda idag
- Första växeln
- Andra växeln
- Tredje växeln
- Fjärde växeln
- Femte växeln
- En ojämn krona
- Prestanda i morgon
- Qubics kärnteam
- Valis-teamet
- Knäböj inför kronan
- Kommer upp: Valis förslag
- Läs serien "Fallet för en Qubic Stablecoin”
Relaterade inlägg