ஒரு பரிவர்த்தனைக்கான கட்டணத்தை அமைக்கவும், ஒரு நிறுவல் அல்லது ஓர் அழைப்பின் செலவை மதிப்பிடவும், ஒரு சரிபார்ப்பாளருக்கு என்ன செலுத்தப்படுகிறது என்பதைப் புரிந்துகொள்ளவும் இந்தப் பக்கத்தைப் பயன்படுத்துங்கள். கட்டணங்கள் RAND-இல் குறிக்கப்படும் குறைந்தபட்ச வரம்புகள். அழைப்பைத் தவிர மற்ற ஒவ்வொரு செயலும் ஒரு நிலையான கட்டணத்தைச் செலுத்துகிறது. சங்கிலி 20-இல் ஓர் அழைப்பு, அதன் நிரூபணம் அறிவிக்கும் கேஸ் வரம்புக்கும் அதன் பைட்டுகளுக்கும் கட்டணம் செலுத்துகிறது; அந்த விலைகள் தொகுதிகள் எவ்வளவு நிரம்பியுள்ளன என்பதைப் பொறுத்து மாறுகின்றன, ஓர் உச்சவரம்பில் நின்றுவிடுகின்றன.
குறைந்தபட்ச வரம்புகள்
கட்டணங்கள் 10⁻⁹ RAND அலகுகளில் கணக்கிடப்படுகின்றன. மாறிலிகள் randprotocol_core::gas-இல் உள்ளன:
| பரிவர்த்தனை | குறைந்தபட்ச வரம்பு | இன்று |
|---|---|---|
எந்தத் தொகுப்பும்: RAND அல்லது எந்த RPL டோக்கனின் பரிமாற்றம், ஒரு பிணைப்பு, ஒரு பால வைப்பு (BridgeAttest, அதன் ரிலேயரால் செலுத்தப்படுவது), ஒரு TokenMint, ஒரு SetAuthority, ஒரு TokenBurn, ஒரு ListBacking | BUNDLE_BASE = 1,000,000 அலகுகள் | 0.001 RAND |
| நிறுவல் | BUNDLE_BASE + DEPLOY_PER_WORD (100,000) × (நிரல் சொற்கள் + பொதுச் சொற்கள்) | 256-சொல் நிரல்: 0.0266 RAND; 4,096-சொல் நிரல்: 0.4106 RAND; 27,151-சொல் பொது உள்ளீட்டுடன் கூடிய 65,096-சொல் SPL Token படிமம்: 9.2257 RAND (சங்கிலி 13-இல் 2026-09-19 அன்று நிறுவப்பட்டது). சங்கிலி 16 முதல் (hardening_v6, சங்கிலி 20 உட்பட) எந்த அழைப்பாலும் தாங்க முடியாத நிறுவல் ProgramUncallable என மறுக்கப்படுகிறது: பொது உள்ளீடு இல்லாத நிரலுக்கு 8,180 சொற்களுக்கு மேல், பொது உள்ளீட்டுடன் இருக்கும்போது அதைவிடக் குறைவு. அந்தப் படிமம் சங்கிலி 20-இல் மறுக்கப்படும் |
| அழைப்பு | தன் ஜெனிசிஸில் gas பிரிவு உள்ள சங்கிலியில் (சங்கிலிகள் 18, 19 போலவே சங்கிலி 20): BUNDLE_BASE + gas_price × அழைப்பு நிரூபணம் அறிவிக்கும் கேஸ் வரம்பு + byte_price × அழைப்பு நிரூபணம் மற்றும் உள்ளீட்டு உறையின் ஒவ்வொரு KiB-க்கும் (பகுதி KiB முழுமையானதாகக் கணக்கிடப்படும்), பைட் 0 முதல். சங்கிலி 18-இல் கேஸ் காண்க. அந்தப் பிரிவு இல்லாத சங்கிலியில்: BUNDLE_BASE + call_fee(tier), இங்கு call_fee = CALL_BASE (1,000,000) + 10-க்கு மேலான ஒவ்வோர் இரண்டு அடுக்குகளுக்கும் 100,000, அத்துடன் 2,097,152 + 18,432 பைட்டுகள் என்ற இலவச ஒதுக்கீட்டுக்கு மேலான அழைப்பு நிரூபணம் மற்றும் உள்ளீட்டு உறையின் ஒவ்வொரு KiB-க்கும் (பகுதி KiB முழுமையானதாகக் கணக்கிடப்படும்) 1,000 அலகுகள் | சங்கிலி 20, 100 மற்றும் 800 அலகுகள் என்ற தொடக்க விலைகளில்: அடுக்கின் உச்சவரம்பான 20,479 கேஸை அறிவித்து, 1,350,000 பைட் நிரூபணமும் உறையும் கொண்ட அடுக்கு-14 அழைப்பின் குறைந்தபட்ச வரம்பு 0.0041 RAND; பணப்பையின் இயல்புநிலை அதைவிட அதிகம் செலுத்துகிறது (கீழே). gas பிரிவு இல்லாமல், சங்கிலி 15-இல் இருந்ததுபோல: அடுக்கு 10: 0.002; அடுக்கு 14: 0.0022 RAND, ஒதுக்கீட்டுக்குள். v0.5.6 முதல் அடுக்கு 14-க்கு மேலான அழைப்பு எவ்வளவு செலுத்தினாலும் மறுக்கப்படுகிறது (MAX_CALL_TIER). சங்கிலி 13-இல் 2026-09-19 அன்று செய்யப்பட்ட ERC-20 approve அழைப்பு (அடுக்கு 16, 3,412,405-பைட் நிரூபணம்) 0.00357 RAND செலுத்தியது; v0.5.6 முதலான எந்தச் சங்கிலியிலும் அது மறுக்கப்படும் |
| தூண்டல் (RPL-2, சங்கிலி 20) | ஓர் அழைப்பின் குறைந்தபட்ச வரம்பு, அத்துடன் நிலைமாற்றம் உருவாக்கும் ஒவ்வொரு கலத்துக்கும் ஜெனிசிஸின் program_state.cell_fee (முன்பு எதுவும் சேமிக்கப்படாத இடத்தில் பூஜ்ஜியமற்ற மதிப்புடன் எழுதப்படும் கலம்); ஒரு கலத்தை மீண்டும் எழுதுவதோ நீக்குவதோ எதையும் சேர்ப்பதில்லை | சங்கிலி 20-இன் cell_fee 0.01 RAND: மேலே உள்ள அடுக்கு-14 அழைப்பு இரண்டு கலங்களை உருவாக்கினால், அதன் குறைந்தபட்ச வரம்பு 0.0241 RAND |
| BridgeBurn | BRIDGE_BURN_FEE = 10 × BUNDLE_BASE: அடிப்படைக் கட்டணமும் பாலத்தின் சொந்தக் கட்டணமும், இரண்டும் ஓர் எரிப்பு சுமக்கும் ஒரே தொகுப்பிலிருந்து செலுத்தப்படுகின்றன | 0.01 RAND; சங்கிலி 20-இல் பாலம் எரிக்கப்பட்ட zUSD-இன் 10 bps-ஐயும் வைத்துக்கொள்கிறது (கீழே) |
| RegisterToken, RegisterBridgedToken | BUNDLE_BASE + டோக்கன் பதிவேட்டின் registration_fee (ஒரு ஜெனிசிஸ் அளவுரு) | சங்கிலி 20: 0.001 + 1 RAND = 1.001 RAND, இதில் 1 RAND எரிக்கப்படுகிறது |
| அச்சிடல் (ஃபாசெட்), பிணைப்பு நீக்கம் | 0; தொகுப்பு இல்லை, சரிபார்ப்பாளர் கையொப்பமிட்டது | — |
| PauseMints, UnpauseMints | 0; தொகுப்பு இல்லை, இடைநிறுத்த விசை அல்லது PQ காப்பாளர் கோரத்தால் அங்கீகரிக்கப்படுகிறது; எனவே RAND எதுவும் இல்லாத பணப்பையிலிருந்தும் இடைநிறுத்தம் செயல்படும் | — |
| திரும்பப் பெறுதல் | பிணையத்தில் அனுப்பப்படும்போது 0; 0.001 RAND அடிப்படைக் கட்டணம் திரும்பப் பெறப்படும் தொகையிலிருந்து எடுக்கப்படுகிறது | 1,000 RAND திரும்பப் பெறுதல் 999.999 மதிப்புள்ள குறிப்பை உருவாக்குகிறது |
கட்டணம் தொகுப்பின் ஒரு பொதுச் சொல்; அது எப்போதும் RAND-இலேயே இருக்கும். மறைக்கப்பட்ட-சொத்துத் தொகுப்பு விருந்தினர் நிரல் அதை RAND குழுவின் இருப்புத் தொடர்பான in₂ + in₃ = out₂ + out₃ + fee + burn_r-இல் (இடங்கள் 2–3) பிணைக்கிறது; எனவே எந்தக் குறிப்புகள் என்பதை வெளிப்படுத்தாமல் அது மறைக்கப்பட்ட குறிப்புகளிலிருந்து செலுத்தப்படுகிறது; ஒரு டோக்கன் அதே தொகுப்பின் இடங்கள் 0–1 வழியாகத் தன் சொந்தத் தொடர்பான in₀ + in₁ = out₀ + out₁ + burn_a-இன் கீழ் நகர்கிறது. ஆகவே ஒரே நிரூபணம் ஒரு டோக்கனை நகர்த்தி அதன் RAND கட்டணத்தையும் செலுத்துகிறது; டோக்கன் வைத்திருந்தும் செலவிடக்கூடிய RAND இல்லாத பணப்பை நிரூபிப்பதற்கு முன்பே மறுக்கப்படுகிறது.
பாலத்தின் கட்டணம் எரிப்பின் மீது விழுகிறது, ஏனெனில் அனுப்புநர் RAND வைத்திருப்பது உறுதியான ஒரே பாலப் பரிவர்த்தனை அதுதான்; வைப்பவரிடம் இன்னும் RAND இல்லாததால், வைப்பு அடிப்படைக் கட்டணத்தை மட்டுமே செலுத்துகிறது. பதிவுக் கட்டணம் fee_floor-இன் பகுதியாக அல்லாமல் ஒரு பேரேட்டு உண்மையாக இருப்பதால், அது அந்தச் செயலின் சொந்த விதிகளால் சரிபார்க்கப்படுகிறது (RegistrationFeeTooLow); ஓர் அழைப்பின் கேஸ் அல்லது அடுக்குப் பகுதி அதன் நிரூபணம் குறிவிலக்கப்பட்ட பிறகு வசூலிக்கப்படுவதைப் போலவே. ஓர் அழைப்பின் குறைந்தபட்ச வரம்பு இருமுறை சரிபார்க்கப்படுகிறது, ஏனெனில் அது அறிவிப்பவை அதன் நிரூபணம் சரிபார்க்கப்பட்ட பிறகே நம்பப்படுகின்றன. சங்கிலி 20-இல், எந்தச் சரிபார்ப்புக்கும் முன் நிகழும் முதல் சோதனை அழைப்பின் பைட்டுகளையும் 1 என்ற அறிவிக்கப்பட்ட வரம்பையும் விலையிடுகிறது (அங்கே ஒரு Invoke அதன் கலக் கட்டணத்தையும் செலுத்த வேண்டும்); இரண்டாவது, சரிபார்க்கப்பட்ட நிரூபணம் அறிவிக்கும் வரம்பை விலையிடுகிறது. gas பிரிவு இல்லாத சங்கிலியில் இவ்விரண்டும் BUNDLE_BASE + CALL_BASE மற்றும் அடுக்குக்குத் துல்லியமான குறைந்தபட்ச வரம்பு ஆகும்.
ஊகிப்பதற்குப் பதிலாக முனையிடம் கேளுங்கள்:
rand fee bundle # 0.001 RAND
rand fee deploy 256 # 0.0266 RAND
rand fee call 14 --gas 20479 --bytes 1350000 # 0.0041 RAND at chain 20's starting prices
→ {"method":"rand_estimateFee","params":[{"kind":"call","tier":14,"gas":20479,"bytes":1350000}]}
← "4103100"
அந்தப் பதில் தொடக்க விலைகளில் 1,000,000 + 100 × 20,479 + 800 × 1,319 ஆகும்; முனை, கேட்கப்படும் நேரத்தில் சங்கிலியின் நுனியில் உள்ள விலைகள் எவையோ அவற்றில் விலையிடுகிறது. சங்கிலி 20-இல் JSON-RPC வழியாக அழைப்பு விவரக்குறிப்பின் gas புலம் கட்டாயம் (அது இல்லையெனில் -32602). --gas இல்லாத rand fee call <tier> அடுக்கின் உச்சவரம்பை அனுப்புகிறது; --bytes இல்லாமல் எந்தப் பைட்டுகளையும் விலையிடுவதில்லை. ஒரு தூண்டலும் இதே வழியில் விலையிடப்படுகிறது; "kind":"invoke" உடன், "created_cells": c என்பது c கலக் கட்டணங்களைச் சேர்க்கிறது (மேலே உள்ள எடுத்துக்காட்டுக்கு இரண்டு கலங்களுடன் 24103100, சங்கிலி 20-இடம் 2026-10-01 அன்று கேட்கப்பட்டது). gas பிரிவு இல்லாத சங்கிலி 15-இல், rand fee call 14 0.0022 RAND எனப் பதிலளித்தது.
பணப்பையின் இயல்புநிலைகள் துல்லியமாகக் குறைந்தபட்ச வரம்புகளே; சங்கிலி 20-இல் ஓர் அழைப்பு மட்டும் விதிவிலக்கு, அதன் இயல்புநிலை கூடுதல் இடைவெளியைச் சேர்க்கிறது (கீழே); rand send --fee <RAND>-உம், bond, call, bridge-mint, bridge-burn (இயல்புநிலை 0.01) மற்றும் token துணைக்கட்டளைகளில் உள்ள --fee கொடியும் அவற்றை உயர்த்துகின்றன. குறைந்தபட்ச வரம்புக்கு மேலான எதுவும் அன்பளிப்பு ஆகும்.
சங்கிலி 18-இல் கேஸ்
2026-09-29 முதல் 2026-10-01 வரை இயங்கிய சங்கிலி 18 முதல் கேஸ்-அளவீட்டுச் சங்கிலி; அதே பில்டில் அதன் மறு-ஜெனிசிஸான சங்கிலி 19-உம் அதே gas பிரிவைக் கொண்டிருந்தது. சங்கிலி 20 (v0.6.8) இந்தப் பிரிவின் ஒவ்வொரு விதியையும் வைத்துக்கொண்டு, இரண்டு விலை உச்சவரம்புகளையும், கட்டணம் செலுத்தும் பைட்டுகளில் மட்டுமே கணக்கிடப்படும் ஒரு பைட் சுமையையும் சேர்க்கிறது (கீழே). gas பிரிவு இல்லாத சங்கிலி மேலே உள்ள அட்டவணையின் அடுக்கு அட்டவணையையே வைத்துக்கொள்கிறது.
எது கணக்கிடப்படுகிறது. ஒரு கேஸ் என்பது zkVM-இன் cpu அட்டவணையின் ஒரு வரிசை; எனவே ஒரு சாதாரண அறிவுறுத்தலின் செலவு 1. அமைப்பு அழைப்புகள் மட்டுமே பிற செலவுகள்:
| செயல்பாடு | கேஸ் |
|---|---|
எந்த அறிவுறுத்தலும், HALT, WRITE_OUTPUT, READ_INPUT, READ_PUBLIC | 1 |
n சொற்களின் மீது POSEIDON2 | 3 + 3 × ⌈n/4⌉ (ஒவ்வோர் உள்வாங்கல் வரிசையின் செலவும் 3) |
SHA256, ஒரு சுருக்கம் | 64 |
KECCAK, ஒரு வரிசைமாற்றம் | 192 |
அறிவிக்கப்பட்ட வரம்பு. ஓர் அழைப்பு நிரூபணம் முன்பைவிட ஒரு பொது மதிப்பைக் கூடுதலாகச் சுமக்கிறது, GAS_LIMIT; ஓட்டத்தின் கேஸ் அதற்குச் சமமாகவோ குறைவாகவோ உள்ளது என்பதைச் சுற்று (கட்டுப்பாட்டுத் தொகுப்பு 8) நிரூபிக்கிறது. துல்லியமான கேஸ் தனிப்பட்டதாகவே இருக்கும். நிரூபணத்தின் சொந்தத் தலைப்பின் உச்சவரம்புக்கு மேலான வரம்பு, எந்தச் சரிபார்ப்பி விசையும் உருவாக்கப்படுவதற்கு முன்பே மறுக்கப்படுகிறது:
gas_max = (2ᵗ − 1) + 2^(t−2) + 191 × (keccak rows / 32) + 63 × (sha256 rows / 64)
ஹாஷ் அட்டவணை எதையும் பயன்படுத்தாத அழைப்புக்கு அது அடுக்கு 10-இல் 1,279, அடுக்கு 12-இல் 5,119, அடுக்கு 14-இல் 20,479.
குறைந்தபட்ச வரம்பு. தொகுதி தொடங்கும்போது நடைமுறையில் உள்ள விலைகளில், பேரேடு அறிவிக்கப்பட்ட வரம்புக்கும் பைட்டுகளுக்கும் கட்டணம் வசூலிக்கிறது:
fee ≥ BUNDLE_BASE + gas_price × gas_limit + byte_price × ⌈bytes / 1024⌉
bytes என்பது அழைப்பு நிரூபணமும் உள்ளீட்டு உறையும் ஆகும். அடுக்கு அட்டவணையும் அதன் இலவச ஒதுக்கீடும் அத்தகைய சங்கிலியில் பொருந்தாது. குளம் ஒரு தொகுதி கோருவதையே துல்லியமாகக் கோருகிறது; மலிவான அழைப்பை FeeTooLow என மறுக்கிறது.
தொகுப்புகளும் அங்கீகார நிரூபணமும் நிலையான வரம்புகளை அறிவிக்கின்றன. ஒவ்வொரு தொகுப்பு நிரூபணமும் ஜெனிசிஸின் bundle_gas_limit ஆன 20,479-ஐ (அடுக்கு-14 உச்சவரம்பு) துல்லியமாக அறிவிக்க வேண்டும்; இல்லையெனில் பரிவர்த்தனை BundleGasLimit என மறுக்கப்படும். சங்கிலி 17 முதலான ஒவ்வொரு சங்கிலியையும் போல, சங்கிலி 20 பிரிக்கப்பட்ட அங்கீகாரத்தை இயக்குகிறது; எனவே ஒவ்வொரு தொகுப்பும் ஓர் அடுக்கு-10 அங்கீகார நிரூபணத்தைச் சுமக்கிறது, அது 1,279-ஐ அறிவிக்க வேண்டும் (AuthGasLimit). இவ்விரண்டில் எதுவும் கட்டணம் அல்ல: ஒரு பரிமாற்றம், ஒரு பிணைப்பு அல்லது ஒரு நிறுவல் மேலே உள்ள அட்டவணையின் நிலையான குறைந்தபட்ச வரம்பையே செலுத்துகிறது. பணப்பை இவ்விரு மதிப்புகளையும் தானே அறிவிக்கிறது.
விலைகள் மாறுகின்றன. சங்கிலி 20-இன் gas பிரிவில் ஒரு dynamic கட்டுப்படுத்தி உள்ளது; எனவே gas_price-உம் byte_price-உம் பேரேட்டு நிலையாகும், நிலை வேரில் உறுதிசெய்யப்படுகின்றன. ஒவ்வொரு தொகுதிக்கும் ஒருமுறை, அதன் பரிவர்த்தனைகளுக்குப் பிறகு, ஓர் இலக்கோடு ஒப்பிடுகையில் தொகுதி எவ்வளவு நிரம்பியிருந்தது என்பதைப் பொறுத்து ஒவ்வொன்றும் மாறுகிறது:
price' = min(max_price, max(min_price, price + ⌊price × adjust_bps × (used − target) / (10,000 × target)⌋))
used இலக்கின் இருமடங்கில் வரம்பிடப்படுகிறது; எனவே ஒரு தொகுதி எந்தத் திசையிலும் செய்யக்கூடிய மிகப்பெரிய மாற்றம் adjust_bps ஆகும். max_price என்பது ஜெனிசிஸ் உச்சவரம்பு; சங்கிலிகள் 18, 19-இல் அது இல்லை. byte_price தொகுதியின் கட்டணம் செலுத்தும் பைட்டுகளைப் பின்தொடர்கிறது (கீழே); gas_price அதன் அழைப்புகள் மற்றும் தூண்டல்களின் அறிவிக்கப்பட்ட வரம்புகளின் கூட்டுத்தொகையையும், அத்துடன் ஒவ்வொரு தொகுப்புக்கும் 20,479-ஐயும் பின்தொடர்கிறது.
chain 20 gas பிரிவு | மதிப்பு |
|---|---|
genesis-இல் gas_price, byte_price | ஒரு கேஸுக்கு 100 அலகுகள்; ஒரு KiB-க்கு 800 அலகுகள் |
min_gas_price, min_byte_price | 100; 800, எனவே தொடக்க விலைகளே குறைந்தபட்ச வரம்புகளும் ஆகும் |
max_gas_price, max_byte_price | 10,000; 80,000: உச்சவரம்புகள், குறைந்தபட்ச வரம்புகளின் 100 மடங்கு (chain 20-இல் புதியவை) |
byte_load | paying (chain 20-இல் புதியது) |
target_block_bytes | 10,485,760, 20 MiB பிளாக் வரம்பில் பாதி |
target_block_gas | 262,144 |
adjust_bps | 1,250: ஒரு பிளாக்கிற்கு அதிகபட்சம் 12.5% |
bundle_gas_limit | 20,479 |
metering | circuit |
தன் இலக்குகளுக்குக் கீழே உள்ள ஒரு பிளாக் விலைகளைக் குறைக்கிறது; எனவே அமைதியான சங்கிலியில் அவை குறைந்தபட்ச வரம்புகளிலேயே இருக்கின்றன. rand_getLimits முனையின் (tip) தற்போதைய gas_price, byte_price ஆகியவற்றை gas_metering: "circuit", bundle_gas_limit, adjust_bps ஆகியவற்றுடனும், v0.6.8 முதல் max_gas_price, max_byte_price, byte_load ஆகியவற்றுடனும் வழங்குகிறது (அவை இல்லாத சங்கிலியில் null); rand_status அதே இரண்டு விலைகளையும் gas_prices ஆகத் தெரிவிக்கிறது.
உச்சவரம்புகளும் கட்டணம் செலுத்தும் பைட் சுமையும்
இரண்டும் gas.dynamic-இன் genesis புலங்கள், v0.6.8-இல் புதியவை (audit v6, POOL-2); அவற்றை அமைக்கும் முதல் சங்கிலி chain 20. chain 18, 19 ஆகியவற்றில் இருந்த ஒரு குறைபாட்டை அவை சரிசெய்கின்றன. அங்கு, byte_price ஒவ்வொரு பரிவர்த்தனையின் குறியாக்க நீளத்துக்கு ஏற்ப மாறியது; ஆனால் அதைச் செலுத்துவது அழைப்பு மட்டுமே. ஏழு பரிமாற்றங்கள் (ஒவ்வொன்றும் சுமார் 2.85 MB, நிலையான கட்டணம்) ஒரு பிளாக்கைப் பைட் இலக்கின் சுமார் 1.9 மடங்கு வரை நிரப்பி, உச்சவரம்பு ஏதுமின்றி, விலையை ஒரு பிளாக்கிற்குச் சுமார் 11% உயர்த்துகின்றன: இத்தகைய சுமார் 65 பிளாக்குகள் அதைத் தொடக்க விலையின் 1,000 மடங்குக்குக் கொண்டு செல்கின்றன; அதன் பின் ஓர் அழைப்பு சுமார் 0.004-க்குப் பதிலாகச் சுமார் 1 RAND செலவாகிறது.
- உச்சவரம்புகள்.
max_gas_price,max_byte_priceஆகியவை கட்டுப்படுத்தி ஒருபோதும் தாண்டி உயர்த்தாத விலைகள். படிநிலை மாற்றம் அதேதான், பின்னர் அது வரம்புக்குள் அடக்கப்படுகிறது (gas::next_price_capped); எனவே உச்சவரம்பில் உள்ள ஒரு விலை எத்தனை நிறைந்த பிளாக்குகள் தொடர்ந்தாலும் அங்கேயே இருக்கும், இலக்குக்குக் கீழே உள்ள முதல் பிளாக்கில் குறையும். ஒரு genesis ஒவ்வொன்றையும் அதன் தொடக்க விலைக்குச் சமமாகவோ அதற்கு மேலாகவோ அமைக்க வேண்டும். chain 20-இன் உச்சவரம்புகளில், மேலே குறிப்பிட்ட 20,479 கேஸ், 1,319 KiB கொண்ட tier-14 அழைப்பின் குறைந்தபட்சக் கட்டணம் 0.3113 RAND; அதன் குறைந்தபட்சக் கட்டணம் எட்டக்கூடிய மிக உயர்ந்த அளவு இதுவே. - கட்டணம் செலுத்தும் பைட் சுமை.
byte_load: "paying"கீழ், பிளாக்கின்bytes_usedபைட் விலை விதிக்கப்படும் பைட்டுகளை மட்டுமே கணக்கிடுகிறது: ஒவ்வொருCall,Invokeஆகியவற்றின் நிரூபணமும் உள்ளீட்டு உறையும் (gas::call_bytes); பரிமாற்றம், பிணை, எரிப்பு ஆகியவற்றின் எதுவும் கணக்கில் சேராது. பரிமாற்றங்கள் நிறைந்த ஒரு பிளாக் பைட் விலையை மாற்றுவதில்லை.Ledger::block_usageமுன்மொழிபவருக்கும் நகல் முனைக்கும் (replica) இந்த அளவைக் கணக்கிடுகிறது; எனவே இரண்டும் ஒத்துப்போகின்றன.
கட்டணம் செலுத்தும் சுமையின் கீழ், பரிமாற்றங்கள் நிறைந்த ஒரு பிளாக் அழைப்புக்கு எந்த விலைச் சமிக்ஞையையும் தருவதில்லை; எனவே நேர்மையான முன்மொழிபவர் அழைப்புகளுக்கும் இடம் ஒதுக்குகிறார். இது முனைக் கொள்கை, செல்லுபடி விதி அல்ல: ஓர் அழைப்போ இன்வோக்கோ மெம்பூலில் இருந்து அதன் தற்போதைய குறைந்தபட்சக் கட்டணத்தைச் செலுத்தும்போது, நிலையான கட்டணப் பரிவர்த்தனைகள் முதல் சுற்றில் பிளாக்கின் பைட்டுகளில் அதிகபட்சம் நான்கில் மூன்று பங்கை மட்டுமே எடுக்கின்றன; கடைசிக் கால் பங்கில் அழைப்புகள் விட்டுச்செல்லும் இடம் பின்னர் நிறுத்திவைக்கப்பட்ட பரிமாற்றங்களால் நிரப்பப்படுகிறது (மெம்பூல்).
ஓர் அழைப்புக்கு வாலட் செலுத்துவது
rand call முதலில் நிரலை எமுலேட்டரில் இயக்கி gas: <exact> (declaring <limit>, tier <t>) என அச்சிடுகிறது. இயல்பாக, அது துல்லியமான கேஸை 2^(tier − 2)-இன் மடங்குக்கு மேல்நோக்கி முழுமையாக்கி அறிவிக்கிறது; --gas-limit N ஒரு துல்லியமான அளவை அறிவிக்கிறது, --gas-limit max தலைப்பின் உச்சவரம்பை அறிவிக்கிறது.
இரண்டு காரணங்கள் இயல்புநிலைக் கட்டணத்தைக் குறைந்தபட்சக் கட்டணத்தைவிட உயர்த்துகின்றன:
- நிரூபணம் வரம்பு அளவில் விலையிடப்படுகிறது. chain 16 முதல் (
hardening_v6, chain 20 உட்பட) ஓர் அழைப்பு நிரூபணம் அதன் சொந்தப் பரிவர்த்தனையுடன் பிணைக்கப்பட்டுள்ளது; எனவே நிரூபணம் உருவாகும் முன்பே கட்டணம் நிர்ணயிக்கப்படுகிறது. வாலட் உண்மையான நிரூபண அளவுக்குப் பதிலாகச் சங்கிலியின் நிரூபண வரம்பான 4 MiB-ஐ விலையிடுகிறது (wallet::hardened_call_quote_bytes). இதனால் கூடுதலாகச் செலுத்த மட்டுமே நேரிடும். - இரண்டு விலைப் படிகளுக்கான இடைவெளி.
rand_getLimitsஉறுதிசெய்யப்பட்ட தலைப் பிளாக்கின் விலைகளை வழங்குகிறது; ஓர் அழைப்பு இரண்டு அல்லது மூன்று பிளாக்குகள் கழித்தே சேர்க்கப்படுகிறது; எனவே இயல்புநிலை குறைந்தபட்சக் கட்டணத்தை(1 + adjust_bps / 10,000)²ஆல் பெருக்குகிறது; இது chain 20-இல் 1.125².
2026-09-30 அன்று chain 18-இல் அளவிட்டபோது, இந்த இயல்புநிலைகளில் நான்கு அழைப்புகள் ஒவ்வொன்றும் 0.0057 முதல் 0.0075 RAND வரை செலவாயின (எடுத்துக்காட்டு நிரல்கள்). --fee இயல்புநிலையை மீறுகிறது; வாலட் சமர்ப்பிக்கும் முன் உண்மையான நிரூபணத்தை மீண்டும் விலையிட்டு, குறைந்தபட்சக் கட்டணத்துக்குக் கீழான கட்டணத்தை மறுக்கிறது.
கட்டணம் எங்கு செல்கிறது
குறைந்தபட்சக் கட்டணமும் கூடுதல் கட்டணமும் (tip) முழுவதும், ஒரே ஒரு விதிவிலக்குடன், வேலிடேட்டர் பதிவேட்டில் உள்ள பிளாக் முன்மொழிபவரின் rewards-க்கு வரவு வைக்கப்படுகிறது; இந்தச் சங்கிலியில் ஒரு தொகையை வெளிப்படையாகச் சேமிக்கும் ஒரே இடம் அதுவே. tokens.burn_registration_fee கொண்ட genesis-இல் (chain 15 முதல் ஒவ்வொரு சங்கிலியையும் போலவே chain 20), ஒரு RegisterToken அல்லது RegisterBridgedToken-இன் registration_fee எரிக்கப்படுகிறது; முன்மொழிபவர் fee − registration_fee-ஐ வைத்துக்கொள்கிறார்; rand_getSupply அதை registration_fees_burned-இல் கணக்கிடுகிறது. அந்தக் கொடி இல்லாத chain 14-இல், முன்மொழிபவர் முழுக் கட்டணத்தையும் வைத்துக்கொண்டார். வேறு எதுவும் எரிக்கப்படுவதில்லை, பகிர்வும் இல்லை. ஒரு வேலிடேட்டர் திரட்டிய வெகுமதிகளை rand-node withdraw மூலம் ஒரு குறிப்பாக (note) மாற்றுகிறார் (ஸ்டேக்கிங்). ஓர் இன்வோக்கின் செல் கட்டணம் அதன் தொகுப்புக் கட்டணத்தின் ஒரு பகுதி; மீதியுடன் சேர்ந்து அதுவும் முன்மொழிபவருக்குச் செல்கிறது. chain 20-இல் பிளாக் வெகுமதிகளும் இல்லை, பணவீக்கமும் இல்லை: ஒரு வேலிடேட்டரின் வருமானம் முழுவதும் கட்டணங்களே.
chain 20-இல் ஒரு கட்டணம் RAND அல்ல, எந்த வேலிடேட்டருக்கும் செல்வதும் இல்லை. genesis bridge.fees கீழ் (v0.6.8-இல் புதியது), பிரிட்ஜ் ஒவ்வொரு zUSD வைப்பிலும் ஒவ்வொரு zUSD எரிப்பிலும் 10 bps-ஐ, ஆதாரச் சொத்தின் முழு விடுவிப்பு அலகுக்குக் கீழ்நோக்கி முழுமையாக்கி, genesis பெயரிடும் ஒரு கருவூல முகவரிக்கு ஒரு zUSD குறிப்பாக வைத்துக்கொள்கிறது. ஒரு வைப்பு, மொத்தத் தொகையிலிருந்து கட்டணத்தைக் கழித்து வைப்பாளருக்கு வரவு வைக்கிறது; ஓர் எரிப்பு மூலச் சங்கிலியில் amount − fee-ஐ விடுவிக்கிறது. கட்டணக் குறிப்பு வெளியிடப்பட்டதாகவும் ஆதாரம் கொண்டதாகவும் தொடர்கிறது. பிரிட்ஜ், RPL டோக்கன்கள் ஆகியவற்றைப் பார்க்கவும்.
மெம்பூல் வேட்பாளர்களை, அவை தங்கள் குறைந்தபட்சக் கட்டணத்துக்கு மேல் ஒரு KiB-க்குச் செலுத்துவதன் அடிப்படையிலும், பின்னர் கட்டணத்தின் அடிப்படையிலும் வரிசைப்படுத்துகிறது (மெம்பூல்); எனவே நெரிசலின்போது மட்டுமே அதிகக் கட்டணம் பொருட்படுகிறது. ஒரு பரிமாற்றம் சுமார் 2.85 MB (chain 18-இல் அளவிடப்பட்டது): 1.49 MB தொகுப்பு நிரூபணமும் 1.36 MB அங்கீகார நிரூபணமும்; எனவே chain 20-இன் 20 MiB பிளாக்கில் சுமார் ஏழு பொருந்தும். mainnet-க்கு முன் குறைந்தபட்சக் கட்டணம் opcode-களின் மீதல்ல, பைட்டுகளின் மீதான ஒரு கட்டணச் சந்தையாக மாற வேண்டும் என்பதே fullnode-இன் சொந்தக் குறிப்பு. chain 20-இன் பைட் விலை அழைப்புகளுக்கான அந்தச் சந்தை; அழைப்புகள் செலுத்தும் பைட்டுகளால் மட்டுமே அது மாறுகிறது; ஒரு பரிமாற்றத்தின் குறைந்தபட்சக் கட்டணம் இன்னும் நிலையானதே.
இங்கு கேஸ் ஏன் ஒரு விலை, ஒரு வரம்பு அல்ல
ஒவ்வொரு முனையும் ஒவ்வொரு பரிவர்த்தனையையும் இயக்குவதாலும் இயக்கம் வரம்பற்றதாக இருப்பதாலும் Ethereum ஒவ்வொரு opcode-ஐயும் அளவிடுகிறது. Rand-இல் எந்த முனையும் எதையும் இயக்குவதில்லை: அனுப்புநர் நிரலைச் சங்கிலிக்கு வெளியே ஒருமுறை இயக்கி, சங்கிலியிடம் ஒரு நிரூபணத்தை ஒப்படைக்கிறார். ஒரு பரிவர்த்தனைக்கு ஒரு முனையின் பணி ஒரு நிலையான வரிசை: பொதுப் புலங்களைக் குறிவிலக்குதல், கட்டணமில்லாச் சோதனைகளை இயக்குதல், ஒரு STARK-ஐச் சரிபார்த்தல். நிரல் என்ன செய்திருந்தாலும், சூடான சரிபார்ப்பான் விசையுடன் அந்தச் சரிபார்ப்புக்குச் சுமார் 16 ms ஆகிறது. எனவே கேஸின் மூன்று பணிகளும் தனித்தனியாகப் பிரிகின்றன:
- நிறைவு அடுக்கால் (tier) உறுதிசெய்யப்படுகிறது:
2ᵗ − 1சுழற்சிகளுக்குள் நிற்காத ஓர் இயக்கத்தை நிரூபிக்கவே முடியாது; அந்தத் தோல்வியை நிரூபிப்பவர் தாங்குகிறார். - பணியை விலையிடுதல் chain 18 முதல் கேஸ் குறைந்தபட்சக் கட்டணம் செய்யும் வேலை. ஒரு அறிவுறுத்தலுக்கான வலையமைப்பின் செலவு கிட்டத்தட்டப் பூஜ்யம்; ஆனால் அனுப்புநரின் நிரூபணப் பணி உண்மையானது; நிலையான குறைந்தபட்சக் கட்டணம் பத்து லட்சம் சுழற்சி அழைப்பையும் ஆயிரம் சுழற்சி அழைப்பையும் ஒரே விலையில் மதிப்பிட்டது. chain 18 வரை குறைந்தபட்சக் கட்டணம் ஒவ்வொரு அடுக்குக்கும் நிலையானதாக இருந்தது.
- பிளாக் அளவீடு ஒரு பைட் வரவுசெலவு (
MAX_BLOCK_BYTES= இயல்பாக 4 MiB, இல்லையெனில் genesismax_block_bytes) மற்றும் ஒரு பரிவர்த்தனை எண்ணிக்கை (2,000).
fullnode வெளிப்படையாகக் கூறும் இரண்டு எச்சரிக்கைகள்: பைட்டுகள் மாறுபடுகின்றன (ஒரு நிரூபணம் ஒரு மெகாபைட்டைவிடப் பெரியது; எனவே அரிதான வளம் கணினித் திறன் அல்ல, பிளாக் இடமே); நிலை வளர்ச்சி (மரம், நல்லிஃபையர் தொகுப்பு, பதிவேற்றப்பட்ட நிரல் பைட்டுகள்) ஒரு சொல்லுக்கான பதிவேற்றக் கட்டணத்தாலும் நிலையான அடிப்படைக் கட்டணத்தாலும் மட்டுமே விலையிடப்படுகிறது; இது ஒரு testnet-க்குப் போதுமானது, நிலையின் அளவு முக்கியமாகும்போது மறுபரிசீலனை செய்யத் தக்கது.
அதற்குப் பதிலாக அனுப்புநர் செலுத்துவது: நிரூபணம்
மாறுபடும் ஒரே செலவு STARK நிரூபணத்தை உருவாக்குவது; அதை அனுப்புநரின் கணினி மட்டுமே செலுத்துகிறது. விளைவின் வரிசையில்:
- அடுக்கு
t ∈ {10, 12, 14, 16, 18, 20}(v0.5.6 முதல் 14-க்கு மேலான அழைப்பு சங்கிலியில் மறுக்கப்படுகிறது; ஒரு தொகுப்பு 14-இல் நிலைநிறுத்தப்பட்டுள்ளது, chain 17 முதல் அதனுடன் ஒரு tier-10 அங்கீகார நிரூபணத்தையும் கொண்டுள்ளது, இது சுமார் 7 s கூடுதல்): cpu அட்டவணை2ᵗவரிசைகளுக்கு நிரப்பப்படுகிறது; ஒவ்வொரு படியும் நிரப்பப்பட்ட தடத்தை ஏறக்குறைய நான்கு மடங்காக்குகிறது. மேம்பாட்டு மடிக்கணினியில் அளவிடப்பட்டது: tier 10-இல்private_paymentசுமார் 7 s-இல்; tier 14-இல் மறைக்கப்பட்ட-சொத்துத் தொகுப்பு விருந்தினர் நிரல், எந்தச் சொத்தை நகர்த்தினாலும், சுமார் 100 s-இல். - இயக்கப்பட்ட சுழற்சிகள், ஏனெனில் அவையே அடுக்கைத் தீர்மானிக்கின்றன: எழுதப்பட்ட அறிவுறுத்தல்கள் அல்ல, இயக்கப்பட்ட அறிவுறுத்தல்கள்.
- நிரல் அளவு, சிறிதளவே: தடத்தின் தொடக்கத்தில் நான்கு சொற்களுக்கு ஒரு டைஜெஸ்ட் வரிசை.
- தனிப்பட்ட உள்ளீட்டு அளவு, அதே முறையில்.
- எந்த அட்டவணைகள் உள்ளன: விருந்தினர் நிரல் பயன்படுத்தியிருந்தால் மட்டுமே keccak அல்லது sha256 அட்டவணை தன் நெடுவரிசைகளுக்கான பங்குச் செலவை ஏற்படுத்துகிறது.
- FRI சுயவிவரம்: 27-க்குப் பதிலாக 80 வினவல்கள் நிரூபண அளவை மூன்று மடங்காக்குகின்றன, ஆனால் நிரூபண நேரத்தை அரிதாகவே மாற்றுகின்றன.
நிரூபணம் தொகைகளையோ, அனுப்புநர் வைத்திருக்கும் குறிப்புகளின் எண்ணிக்கையையோ, சங்கிலியின் அளவையோ சார்ந்திருப்பதில்லை: உறுப்பினர் நிலை நிலையான ஆழம் கொண்ட ஒரு மரத்துக்கு எதிராக நிரூபிக்கப்படுகிறது; எனவே ஒரு பரிமாற்றத்தின் செலவு பத்தாவது பிளாக்கிலும் ஒரு கோடியாவது பிளாக்கிலும் ஒன்றே.
குறிப்புதவி
| மாறிலி | மதிப்பு |
|---|---|
BUNDLE_BASE | 1,000,000 அலகுகள் |
BRIDGE_BURN_FEE | 10,000,000 அலகுகள் (10 × BUNDLE_BASE) |
registration_fee (ஜெனிசிஸின் tokens பிரிவு) | சங்கிலி 20 இல் 1,000,000,000 அலகுகள், எரிக்கப்படுகின்றன (burn_registration_fee) |
DEPLOY_PER_WORD | 100,000 அலகுகள் |
CALL_BASE, CALL_PER_TIER_STEP | 1,000,000; 100,000 அலகுகள்; gas பிரிவு இல்லாத சங்கிலியின் அடுக்குக் கட்டண அட்டவணை |
GAS_PRICE_DEFAULT, BYTE_PRICE_DEFAULT | ஒரு கேஸுக்கு 100 அலகுகள்; ஒரு KiB-க்கு 800 அலகுகள். சங்கிலி 20 இன் தொடக்க விலைகளும் அதன் குறைந்தபட்ச விலைகளும் |
KECCAK_GAS, SHA256_GAS, POSEIDON2_ABSORB_GAS | ஒரு வரிசைக்கு 192; 64; 3 கேஸ் |
max_gas_price, max_byte_price (ஜெனிசிஸின் gas.dynamic) | சங்கிலி 20 இல் ஒரு கேஸுக்கு 10,000 அலகுகள்; ஒரு KiB-க்கு 80,000 அலகுகள்; இவை இல்லாதபோது உச்சவரம்பு இல்லை (சங்கிலிகள் 18 மற்றும் 19) |
byte_load (ஜெனிசிஸின் gas.dynamic) | சங்கிலி 20 இல் paying: அழைப்பு மற்றும் செயலழைப்பு நிரூபணங்களின் பைட்டுகளும் உறைப் பைட்டுகளும் மட்டுமே byte_price-ஐ நகர்த்துகின்றன; இது இல்லாதபோது, ஒவ்வொரு பரிவர்த்தனையின் பைட்டுகளும் |
cell_fee (ஜெனிசிஸின் program_state) | சங்கிலி 20 இல் உருவாக்கப்படும் ஒவ்வொரு கலத்திற்கும் 10,000,000 அலகுகள் (0.01 RAND); அதிகபட்சம் 1,000 RAND |
bundle_gas_limit (ஜெனிசிஸின் gas பிரிவு) | சங்கிலி 20 இல் 20,479, gas_max(14, 0, 0); ஓர் அங்கீகார நிரூபணம் 1,279 என அறிவிக்கிறது, gas_max(10, 0, 0) |
adjust_bps (ஜெனிசிஸின் gas.dynamic) | சங்கிலி 20 இல் 1,250; ஒரு ஜெனிசிஸ் 1 முதல் 5,000 வரை அமைக்கலாம் |
MAX_PROGRAM_WORDS | 4,096, ஜெனிசிஸ் max_program_words ஐ அமைத்தால் தவிர (அதிகபட்சம் 65,535; சங்கிலி 20 65,535 ஐ அமைக்கிறது, மேலும் எந்த அழைப்பாலும் தாங்க முடியாத 8,180 சொற்களுக்கு மேற்பட்ட நிரலை hardening_v6 மறுக்கிறது) |
MAX_PROOF_BYTES | 2 MiB, ஜெனிசிஸ் max_proof_bytes ஐ அமைத்தால் தவிர (சங்கிலி 20 இல் 4 MiB; சங்கிலிகள் 13 முதல் 15 வரை 8 MiB) |
MAX_BLOCK_BYTES, MAX_BLOCK_TXS | 4 MiB (ஜெனிசிஸ் max_block_bytes ஐ அமைத்தால் தவிர; சங்கிலி 20 இல் 20 MiB), 2,000 |
| அடுக்குகள் | 10, 12, 14, 16, 18, 20; சுழற்சிகள் ≤ 2ᵗ − 1 |
MAX_CALL_TIER | 14: இதற்கு மேற்பட்ட அழைப்பு நிரூபணம் ஏற்பு நிலையிலும் தொகுதியிலும் மறுக்கப்படுகிறது (v0.5.6 முதல்) |