Skip to content

High performance setup lol US

ArchiBot edited this page Jan 6, 2023 · 14 revisions

HIGH-PERFORMANCE SETUP

DIS AR TEH EGSAKT OPPOSIET OV LOW-MEMS SETUP AN TYPICALLY U WANTS 2 FOLLOW DOSE TIPS IF U WANTS 2 FURTHR INCREASE ASF PERFORMANCE (IN TERMS OV CPU SPED), 4 POTENTIAL COST OV INCREASD MEMS USAGE.


ASF ALREADY TRIEZ 2 PREFR PERFORMANCE WHEN IT COMEZ 2 GENERAL BALANCD TUNIN, THEREFORE THAR IZ NOT LOT U CAN DO 2 FURTHR INCREASE ITZ PERFORMANCE, ALTHOUGH URE NOT COMPLETELY OUT OV OPSHUNS EITHR. HOWEVR, KEEP IN MIND DAT DOSE OPSHUNS R NOT ENABLD BY DEFAULT, WHICH MEANZ DAT THEYRE NOT GUD ENOUGH 2 CONSIDR THEM BALANCD 4 MAJORITY OV USAGEZ, THEREFORE U SHUD DECIDE YOURSELF IF MEMS INCREASE BROUGHT BY THEM IZ ACCEPTABLE 4 U.


RUNTIME TUNIN (ADVANCD)

BELOW TRICKZ INVOLVE SERIOUS MEMS AN STARTUP TIEM INCREASE AN SHUD THEREFORE BE USD WIF CAUSHUN.

TEH RECOMMENDD WAI OV APPLYIN DOSE SETTINGS IZ THRU DOTNET_ ENVIRONMENT PROPERTIEZ. OV COURSE, U CUD ALSO USE OTHR METHODZ, E.G. runtimeconfig.json, BUT SUM SETTINGS R IMPOSIBLE 2 BE SET DIS WAI, AN ON TOP OV DAT ASF WILL REPLACE UR CUSTOM runtimeconfig.json WIF ITZ OWN ON TEH NEXT UPDATE, THEREFORE WE RECOMMEND ENVIRONMENT PROPERTIEZ DAT U CAN SET EASILY PRIOR 2 LAUNCHIN TEH PROCES.

.NET RUNTIME ALLOWS U 2 TWEAK GARBAGE COLLECTOR IN LOT OV WAYS, EFFECTIVELY FINE-TUNIN TEH GC PROCES ACCORDIN 2 UR NEEDZ. WEVE DOCUMENTD BELOW PROPERTIEZ DAT R ESPECIALLY IMPORTANT IN R OPINION.

CONFIGUREZ WHETHR TEH APPLICASHUN USEZ WERKSTASHUN GARBAGE COLLECSHUN OR SERVR GARBAGE COLLECSHUN.

U CAN READ TEH EGSAKT SPECIFIC OV TEH SERVR GC AT FUNDAMENTALS OV GARBAGE COLLECSHUN.

ASF IZ USIN WERKSTASHUN GARBAGE COLLECSHUN BY DEFAULT. DIS AR TEH MAINLY CUZ OV GUD BALANCE TWEEN MEMS USAGE AN PERFORMANCE, WHICH IZ MOAR THAN ENOUGH 4 JUS FEW BOTS, AS USUALLY SINGLE CONCURRENT BAKGROUND GC THREAD IZ FAST ENOUGH 2 HANDLE ENTIRE MEMS ALLOCATD BY ASF.

HOWEVR, TODAI WE HAS LOT OV CPU COREZ DAT ASF CAN GREATLY BENEFIT FRUM, BY HAVIN DEDICATD GC THREAD PER EACH CPU VCORE DAT IZ AVAILABLE. DIS CAN GREATLY IMPROOOV TEH PERFORMANCE DURIN HEAVY ASF TASKZ SUCH AS PARSIN BADGE PAGEZ OR TEH INVENTORY, SINCE EVRY CPU VCORE CAN HALP, AS OPPOSD 2 JUS 2 (MAIN AN GC). SERVR GC IZ RECOMMENDD 4 MACHINEZ WIF 3 CPU VCOREZ AN MOAR, WERKSTASHUN GC IZ AUTOMATICALLY FORCD IF UR MACHINE HAS JUS 1 CPU VCORE, AN IF U HAS EGSAKTLY 2 DEN U CAN CONSIDR TRYIN BOTH (RESULTS CUD VARY).

SERVR GC ITSELF DOEZ NOT RESULT IN VRY HUGE MEMS INCREASE BY JUS BEAN ACTIV, BUT IT HAS MUTCH BIGGR GENERASHUN SIZEZ, AN THEREFORE IZ FAR MOAR LAZY WHEN IT COMEZ 2 GIVIN MEMS BAK 2 OS. U CUD FIND YOURSELF IN SWEET SPOT WER SERVR GC INCREASEZ PERFORMANCE SIGNIFICANTLY AN UD LIEK 2 KEEP USIN IT, BUT AT TEH SAME TIEM U CANT AFFORD DAT HUGE MEMS INCREASE DAT COMEZ OUT OV USIN IT. LUCKILY 4 U, THAR IZ "BEST OV BOTH WORLDZ" SETTIN, BY USIN SERVR GC WIF GCLatencyLevel CONFIGURASHUN PROPERTY SET 2 0, WHICH WILL STILL ENABLE SERVR GC, BUT LIMIT GENERASHUN SIZEZ AN FOCUS MOAR ON MEMS. ALTERNATIVELY, U MITE ALSO EXPERIMENT WIF ANOTHR PROPERTY, GCHeapHardLimitPercent, OR EVEN BOTH OV THEM AT TEH SAME TIEM.

HOWEVR, IF MEMS IZ NOT PROBLEM 4 U (AS GC STILL TAKEZ INTO AKOWNT UR AVAILABLE MEMS AN TWEAKZ ITSELF), IT BE MUTCH BETTR IDEA 2 NOT CHANGE DOSE PROPERTIEZ AT ALL, ACHIEVIN SUPERIOR PERFORMANCE IN RESULT.

DIS SETTIN ENABLEZ DYNAMIC OR TIERD PROFILE-GUIDD OPTIMIZASHUN (PGO) IN .NET 6 AN LATR VERSHUNS.

DISABLD BY DEFAULT. IN NUTSHELL, DIS WILL CAUSE JIT 2 SPEND MOAR TIEM ANALYZIN ASFS CODE AN ITZ PATTERNS IN ORDR 2 GENERATE SUPERIOR CODE OPTIMIZD 4 UR TYPICAL USAGE. IF U WANTS 2 LERN MOAR BOUT DIS SETTIN, VISIT PERFORMANCE IMPROOVEMENTS IN .NET 6.

CONFIGUREZ WHETHR TEH .NET CORE RUNTIME USEZ PRE-COMPILD CODE 4 IMAGEZ WIF AVAILABLE READYTORUN DATA. DISABLIN DIS OPSHUN FORCEZ TEH RUNTIME 2 JIT-COMPILE FRAMEWORK CODE.

ENABLD BY DEFAULT. DISABLIN DIS IN COMBINASHUN WIF ENABLIN DOTNET_TieredPGO ALLOWS U 2 EXTEND TIERD PROFILE-GUIDD OPTIMIZASHUN 2 TEH WHOLE .NET PLATFORM, AN NOT JUS ASF CODE.


U CAN ENABLE SELECTD PROPERTIEZ BY SETTIN APPROPRIATE ENVIRONMENT VARIABLEZ. 4 EXAMPLE, ON LINUX (SHELL):

export DOTNET_gcServer=1

export DOTNET_TieredPGO=1
export DOTNET_ReadyToRun=0

./ArchiSteamFarm # 4 OS-SPECIFIC BUILD
./ArchiSteamFarm.sh # 4 GENERIC BUILD

OR ON WINDOWS (POWERSHELL):

$Env:DOTNET_gcServer=1

$Env:DOTNET_TieredPGO=1
$Env:DOTNET_ReadyToRun=0

.\ArchiSteamFarm.exe # 4 OS-SPECIFIC BUILD
.\ArchiSteamFarm.cmd # 4 GENERIC BUILD

RECOMMENDD OPTIMIZASHUN

  • ENSURE DAT URE USIN DEFAULT VALUE OV OptimizationMode WHICH IZ MaxPerformance. DIS AR TEH BY FAR TEH MOST IMPORTANT SETTIN, AS USIN MinMemoryUsage VALUE HAS DRAMATIC EFFECTS ON PERFORMANCE.
  • ENABLE SERVR GC. SERVR GC CAN BE IMMEDIATELY SEEN AS BEAN ACTIV BY SIGNIFICANT MEMS INCREASE COMPARD 2 WERKSTASHUN GC. DIS WILL SPAWN GC THREAD 4 EVRY CPU THREAD UR MACHINE HAS IN ORDR 2 PERFORM GC OPERASHUNS IN PARALLEL WIF MAXIMUM SPED.
  • IF U CANT AFFORD MEMS INCREASE DUE 2 SERVR GC, CONSIDR TWEAKIN GCLatencyLevel AN/OR GCHeapHardLimitPercent 2 ACHIEVE "TEH BEST OV BOTH WORLDZ". HOWEVR, IF UR MEMS CAN AFFORD IT, DEN IZ BETTR 2 KEEP IT AT DEFAULT - SERVR GC ALREADY TWEAKZ ITSELF DURIN RUNTIME AN IZ SMART ENOUGH 2 USE LES MEMS WHEN UR OS WILL TRULY NED IT.
  • U CAN ALSO CONSIDR INCREASD OPTIMIZASHUN 4 LONGR STARTUP TIEM WIF ADDISHUNAL TWEAKIN THRU OTHR DOTNET_ PROPERTIEZ EXPLAIND ABOOV.

APPLYIN RECOMMENDASHUNS ABOOV ALLOWS U 2 HAS SUPERIOR ASF PERFORMANCE DAT SHUD BE BLAZIN FAST EVEN WIF HUNDREDZ OR THOUSANDZ OV ENABLD BOTS. CPU SHUD NOT BE BOTTLENECK NOMORE, AS ASF IZ ABLE 2 USE UR ENTIRE CPU POWR WHEN NEEDD, CUTTIN REQUIRD TIEM 2 BARE MINIMUM. TEH NEXT STEP WUD BE CPU AN RAM UPGRADEZ.

Clone this wiki locally