From 9881ae7c0172f5ccc111af8bcdd8de2f396b7fc4 Mon Sep 17 00:00:00 2001 From: Evawudonger Date: Sun, 28 Sep 2025 11:35:26 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E8=BF=81=E7=A7=BBoeaware=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E8=87=B3=E4=BB=A3=E7=A0=81=E4=BB=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tuning_framework/oeaware/_toc.yaml | 6 - .../oeaware/figures/dep-failed.png | Bin 32639 -> 0 bytes .../tuning_framework/oeaware/figures/dep.png | Bin 57238 -> 0 bytes .../oeaware/figures/dependency.png | Bin 27727 -> 0 bytes .../oeaware/oeaware_user_guide.md | 521 ------------ .../tuning_framework/oeaware/_toc.yaml | 6 - .../tuning_framework/oeaware/figures/dep.png | Bin 12645 -> 0 bytes .../oeaware/oeaware_user_guide.md | 754 ------------------ 8 files changed, 1287 deletions(-) delete mode 100644 docs/en/server/performance/tuning_framework/oeaware/_toc.yaml delete mode 100644 docs/en/server/performance/tuning_framework/oeaware/figures/dep-failed.png delete mode 100644 docs/en/server/performance/tuning_framework/oeaware/figures/dep.png delete mode 100644 docs/en/server/performance/tuning_framework/oeaware/figures/dependency.png delete mode 100644 docs/en/server/performance/tuning_framework/oeaware/oeaware_user_guide.md delete mode 100644 docs/zh/server/performance/tuning_framework/oeaware/_toc.yaml delete mode 100644 docs/zh/server/performance/tuning_framework/oeaware/figures/dep.png delete mode 100644 docs/zh/server/performance/tuning_framework/oeaware/oeaware_user_guide.md diff --git a/docs/en/server/performance/tuning_framework/oeaware/_toc.yaml b/docs/en/server/performance/tuning_framework/oeaware/_toc.yaml deleted file mode 100644 index 58ed5a14..00000000 --- a/docs/en/server/performance/tuning_framework/oeaware/_toc.yaml +++ /dev/null @@ -1,6 +0,0 @@ -label: oeAware User Guide -isManual: true -description: Intelligent activation of system tuning features based on dynamic sensing of system behavior -sections: - - label: oeAware User Guide - href: ./oeaware_user_guide.md diff --git a/docs/en/server/performance/tuning_framework/oeaware/figures/dep-failed.png b/docs/en/server/performance/tuning_framework/oeaware/figures/dep-failed.png deleted file mode 100644 index afb4750135657876b455978bf9d8f5eff36be91e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32639 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 diff --git a/docs/en/server/performance/tuning_framework/oeaware/figures/dependency.png b/docs/en/server/performance/tuning_framework/oeaware/figures/dependency.png deleted file mode 100644 index 0cd087fb0c9095e63aa76e0d2464a92225af2399..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27727 zcmdSB1z1(>yC=N%W>YGyA|fp*jdUt4CDIMjjdTcX3{a3zS|miJOS;*L(umRxN(h^j zmYin;zVG}0&Y3ea=gc+p&2_OZ_gd@8`@Ww$f6J%0RpklJTs{Lq5P_nC%pC}VZGtNr z4+lKqnF-Sd|G?bt$lrttzFe7yAR<0@SzUKWZ!22|ONfzA`s5cQpDg%oVQXgXYUaqu z%WZ4H$S1?d%j<0B%_HN+BgdoSF6=EJcSl3%hCO%;S~!_GTAs9Floe#WA&vRt<>mnw zqpUFF4Iaju{FsKv<2riFyPCP!s5o0#I)DZi-X|S-xcRwH2D9)vdBQI!aPq*~_0I~x zh?wax4>W9jPp9NL?Pu*_YhmejI@(D?cV}k@cUzZ#eQ56N^8|8s=sW|Msblt%bYI$pk{Yf`7MGu(Y+d`7<+*fbhv1N3%bT zPj}*GV`ky(b<+R%(J|p%ot;5f*<&_ITRLEf_lGVg{p9{TZ~t1qtEJQF#ZpFb1;ivq+3U2b~W*t%P4xR`-Pd@^2u z-{6^zyQ2fR;{iXdoSod|%p7eUFswFnwKW4Tjvt{$>!5;OR4)e=tYr^qJYIOj!RlG?2ej zI)fjM-p7pi_nGoXF8@g&3m`G4^m1}`!cfZG!`0IgBWM`9{DVZ6-nQ<#;4wFNjQOpH z`OV3HdMAU~;Gb7AnB5)UIDy?`I$_2Fyms~ZM=#9n-`$Sy{`C7_V235x0hj~ z(?@R39|GWerTP|Mie@gJNWc?Q; z__*s0S64HPs`?}1F3z@2?rs=@pN@PR^Wbk?#>4&pk%a4~itBH6bTZ^|_haQG|3_>6 z{pdf?SEttKzsBr8I_V#Z2eAHcu3>KesGVaCb*$q~^xFSFnf+f?SN|zy3kdwH;ktfm zkp6e^`c$a@p&K=^je>tH_o-^U{^x-FpRn$yUfq9uTK*k-{!eZA=lB2Uc>L3v z|8LQR|KfC<==lFt!~XB6#eebf|EL~b?*D1S{+~K2LVTwyITZqdQz7`@by9f#I5q!p zbN`E8+<(T0`y&E>i^~5+5AOex{rlrkpK@CGL`D8584V2N-vQN$wfs9Q{bMix#K3>< z|B8=)eTd12AX-RK=7y%X@lx_xZ_U1{!->|b+(Dln5!2%1Bc45Y8`}5i#|M@yn``;n z>~~2Fhz&x?5wdB4BrwMdw@Dl#v*hQpL*b!)+7Z~;SMOv$)h>lSH=vC|DBQdWpB88h z3>5YglJ2l%D%tL+uU+t&rQq=kT-Xb+@ABQQ7DdUxuS#M5c8TW*ChtJxP}I>f4lP`Y z3V8;ShZeC{FCg#x8y3ZDh17ktEInx}LbgMPOob{5rPz^yut9=JZX_9Gr)3u3z?l1h z>!S(LBm=a9rJGq28ON`tUg7YKmz$IpMv8Yi2mwXM_HQ9(YVc5^&|yJ2%HQKIgnSM; z!Ci!rIUNY;Ks+Hl>s5s~&wHbO{TSOjVS zP@uhv$bji)DSP`#EjbaDlQs5|haTJtI|wKrZU{?Fr(TqQ@%uT1ABFsl_Xrl%|Nfar z`=d%DI>PU)pF`f~a8ce|40~OinMIi+GfyDc557i@FB73m2P@j}FsJgCxr6`?yAPz9j<%-_@Zk zCdHvux#}7Fj>#fwi95ZUX}6Lv{53U(ci#j&)V8#)Xn4u~>?d?zZ7g=VwDtbLC!^46 zrc1VuFoa{jA=UKNQlQFV+phm$z>?s=6cWtY>o7<+y-)BUefb)zu{=hu`k82%vs;7M zieEo_-u%^{6+4k26~{D&i`-!Ta%gqzt?2iF7Ew~oc<$ImvSXo}LlKGGqei?<)bCyq zZ@V@6WW13+??Lsw`#OeZ36GHOWi-%gl;ZwoUuQ+H#+1dju))>PYL3vv8!s^9#>`Sp`=qL>x7u$$=oS3UIv zCB#iq1%h$U5}WuB2`P-a0vemsimq|Xdqp917Ha_&V3%^a@jGp(tA zzE_^~gxvZF^wAD@^H|Uj6kz>%5X``?)pUF~Imi?=BX7r+jU+joVU-<{+d2z*!HI(^ zG{H)9geZ=MsZ?>2K(=EmyQXP~B9?t3`i%uw#qf@Z?AVt`esg9RX%QJLk;OC8Rkxj3 z6njiAj~A-6LR7Sl*hKCmq zbFOTnQD@%82Ao4VxQc{GF(D)S6d(HKp@P$$9^bJzhmoDHB0)*9Gxld;=dQlJh~E+x zk!RGD=iJ*SNTGEa;{5v_C_RGO4~04V+1crxISwAVFzTIV?E6NG}k* zYjwP<8;snF$(OtwZ@ZPLTB$=@Im}h9AGk7Zo%hhVK%UHq(PN(YE#u4diw47WFUU*f zq$1wdNe?AhJsKib@9osSyAh8$Q~J!@N?`ZxCDZ2xGEjK;-#*JP#96&#YW2WRP*%LM zHjxsuwK-W@IiqS%erU)gn3Wse2<2(bG8#gYnx+{Kyg)neyhO6&c8XGQ1)s5Y!c!6l zJGNY*3(#BKPv@VeJB8j&k3Oa~6HNH#Mq0JsD6F{q8PerKitF;OYG)qW=1F=1gW*di z%(`hwqDnq6K+0$D1bDX1RzREr?b2sS|+_8 zOpTXmE~DZFjMB0w>mJRW93_=WTj)-_q|EJVk_2dy94h$6fg65Kqn979$cI@AF&wVg z_HqLb`48S2NIsP8&G(w<70-lt)3R`($cp2`{RCeO8}<49Mq13r$iBvV7Bo;JQ)snW zSa1YJ@k%8je)RTNU6FX9rhS8MwVs#kun@AyPNE}|9gF&WGZWBPAB;F=e&0g}t zttat;+GH2x3G?RN(W^*ikR7vOycu}BC`Y&#+fV;UToE&qqOhBhuW~@9Idwo%M%G^VGr?m;+Ja|DWcu9K z%D3f}X_E@VLUN}Qy;W=d?BkOh4Ep$bM(PsC5s#6JoZB!+STj?CMYuc~Uv>=dofOUS^8MjTP|Mpq z`Qe5b9mI1KCFBZ;QGOCL=nPGFdUPj^=y*7RAWkR(zC(?C_{fq4UTlK0gRH@0AWs zO^n8HzXlPIMg2SR+j49zZ45%i)_7R1%thkr!IrpAhXP2Y7NW0TYT z;cl=Ego_D=4_L$rh{;SSfRxRI<)1C~V&ZlkLly3iAHJ*oNQ)qZRcaa4P`k&opobZV zuwDl9Uxr<`aZb4i26VV7rGKAy>VWNRll_dZs{ryWq>w8<_cZ-5uw{l$NmH_}m$Psu zD=X`2e0yK}cNcdrp)2p5DnzSazkZ!NvgBDcw)_R$eq8bl5xjm~i1PB~kC!PayLdf> zu7sPJnGt}?DYHj!#a(3Km8x}k&wL)?*|VZE?jqMM~{T`3Wh%5R( z6p<7V5Ez?rC2+8@ne&_NNPMJ`sp=6H5m68k8Cj^JpkSkX>(&`1W#wlI;94B7t6>lj zxVZK-BEo6ceQEf@^XJc9sto5wtN7^Y=_lPq8Z<FedWaq%94KEiCN?PlBpe1X>6lZva znp#3gLgMgD#YnQTp5Bn4nAqs^moN3jT_&ZP({4Ph&Up7u_H9N+y7NT6f}&zjqnX&1 z@bGXJ78cZphq%vEQzQNNw)$pgW|9wQlbkQFudf?zZf=Hu`}PetS=HKDQL!}>+>6Hi zdR5pbD0`HGW2^%FuJiEX20!N+ultb^gzr=KCydp_yJgYeMe(6gUyH9VRi?5Nj=ssm zE|F4FCiT5jiqFl>$*I>dFref!MIm#ZJv(P@Wo4!8>nnmoaQRWCkluy6`I_3=!O5at z^jus-!otEAs;a7%$7;OfJz zeP7?*r+ImKPrx+?7G&rW)S+JFHC$p%#3Um0J+HX!>aASlSkP*XJuxX?F zEEtsyo^DzYQ(ur=P#j7B|^*|$LN~~mCJAB!dhIvW~Vhj+nH3u%*g2P`Qy{m*i5z5 zxO-`2zOyPLKr370?_WlFpo951%*@0oK8Ad5_PxW@ny(W_pON)o`IoM7w}r0EfCWOm zfnQko_jqFnQDo)e?t&7t>Z?Kjjk#}gz1h(PK|S6J2s?ZG_fBIXd4^TR?v23&W6{yk zf;1BMcOu(D;qw{Rz+QfhL|Iu`t-L%lr8VpQ(maAlMbVmXi zK-Ja}nRJs8J@3D}k(iNJLGAYaF?qjQikPs~Xyv`{>gv2VqFWUZIXO8+c6~X!Rw$Vm3EAN5V?n_CdGZ=g$|>ibGc&^46YPhV~P08rS)%xYdmH z_-)LQY_2vEH7mao`c-34m{@VnasGGcg=^^4fZh4%=17`CSD`Ci)RF;))#nm{1rkx9 zWoKWsad&r@zH{debAL3|Bb%ZTvCZk%(jiv}L(Dz2wEE818TFR!iSzLMdft<%rbZ*? z?K1UB*zJdW#FcC>u~HffIHjP|Co(lL^tcCZyJb-&vry0lvR+MZ?nU? zn14RhQ$y3E!Lj92O%~z5#>ZE3@52LZ@q)^m0zGEMyg_P`2j|^>ei2WJj-Gn*?AiUC z%E}#zYt8M03beQ3dCXXhHuZZC)z$3S(5jhk?uLe=d_PkI1A5bC!+w+$7k9`fQ{&3e zii%S5S$|<4s&F>x`!&^U`JzP>Mls!a)szPe!J(Z-g(u(Td*_;ZLzY^q1eeH_h_HBe zJyO4RjtX~L)WuVbiW)s-sQ;JQ3oRZK}r2K)x@z{CCM_1R8QE`I*a?EU@y2~q<5!ROF|qG(+8 z3XeT70rcpHWMpI}N=ix#n{C$$Hzw)W>dDi_3Sy+mm{eZ6-v{C)9~K(ggcUVqmZ*Rt zMChswzmDO5qMqwpES;Vb6SLu>uKw*~CgADDLm~+l(VyJUfkP6f;x>TtOYg)v!-$ z-WPAaH3`tXVG#HUZ6Ho<{gc<;HSKPLE&i0y{e zMR&M)(=*|E$C2_WSy@>@xX>kc+ypxOIcdOn2}4KQGKS5!h3P32WMm})zz}@FK6}x< zgwY5mUpT1B?Pna9L3v(%diu>r;_~a~Y@!ekl#rViEY@r+7T;DNWI6cOCMKQEg`GT^?nki6UWapt{WCN`}pW38f`Zeyn0rAJ>8M?YZTxsfmyfa z2;zP=vjN#=%DsE{M5zP!f6e(VSA{6`@4Ur+j5^Cz>*5Q%3TBM$^ZsalqctWG6hy&i^-8zIs&o9og9mg}C8!z& zS|K10I3av)zd3`-(XA^_e2)$fjuKwH;I(Rx<1j35%4EHY2qvNls7*^VT{=A2TOoLg z)e(ajrbGF@h*ZeJFV$8PAm2=?ai3qC9k25#fA!BQa9y>LlIW-8tZB_=_UF z97BW5DC5Bfr{cmL#q9G_#N>NJh-eP`qv)gqie0{cR4u1#lp;_x?a$LI8>w(UTIkO= z2((hbosV(E2%Y0MO3u|dbZbfac)me}-|qH`q@^IHt(< znViDhTqPWrUe0@bs*RYFR7w9@ni@X7`S!`~&O$+rQ)^Q=Vjcb-!w=%_o=UROqj1go%tc&VCVH>8<_JpOmk?CBFIgjZUF) zVONUy-WKq0=Es${k@2*(vW920WNuNvS{@sr=^rrYEqjocNhSJpxBHzEB{`?zjvP=@ zRQcTDIIH$h*IetX@+BqOgiQ;j7;z74ZEbChhthZKH?ygfo~9FeqZQ@B@az2rMxt{$ zxdq(^dNxarh3|0tYxn~j2?Sp;>^MHH-u4GJw+Y>s%L6>nlJ~83z+5=)Rx~f;(%g3` z|0(55Fx~0Z{Z{d3X|KV$y#6NegJ^)q0;?JraZ=)989zrzCGyB;eb%fciq3oW18&mt z=5pEU#-;s(l|bj+q@VeQhy$RH_f?I@-}{(w9dQH#E&O0`ZE$ZoTJ1}HUwK@-*UWcY zx}A{{(z%Ca9t+xu*bVE0@6G2s9iAq1X`(CiAT-P!|2o&W8k~a!&q{pg&LMEyntHP} z-a8BxyP->Fj~aaJ$M-7O20Y)^lLYQ(SBPzfXQudX4Ou6lU-kP+Bn|v@?9<@rTLCVK za3<~)M(BNiJ@;;opbDcB^}J5E+5d1$*Zc0)28-YT>57PM!DfMy^yb;M-slJrwUJHS zUsrJe2E=3Y9piT=4rx}QdHt=@(WIjqes$-=ZraHieP_{eqlxi>LW7EezUA%m{pXja zVYgIN9MS$!SB)$_mb`O%KPyS-Gv`#d+3!|;@b0WFaK2PL#hhn5fAc$ME4>1SUw8!T zhtHfCQPTdwQpJSC-is+Jjd)HY{m$GfniQJ6`?zmL)YhI?;t*cZHP+Ia5e`E!%<@6k zb5i9YvCIW&<*9N;;ymACepE`l69u8elGnf;ss$q*Uzq}i&G5p_xZcMceFOBX`S>R5 zyR~J$=p^TQ;Y^9`f(dbtgv`A$vIUx>o#u>SrFCNh+uLQ@+qcejmNo88bRO6&J-#+5 zc~MP#{*s9M9Qn}D&;$_?(Lf)rNprSAb;0k(;TKsGZe8Lk99BMLj^n&56Ah99JB>8u z!m8uL3A;e+G`OW!NOBB0+V5xoj(qcbq=LB|ql6hsJI`j;EpN|WNs2V^k$l3)$oO+# zw|3o*l}2qv#;xC1TnYqPYp&~sOCuE~`Q;trcb5|%sh^>>al5$@8toabM60`LVSpI6 z^J(*6I?$eZ8PP9z*l#dyKGKO@?(@uXvvyZs?RWRVvh%rdX)5YegZ5?v$(x(!{lMAK z*VjKx5%=3gFFh$tA0IY|JYV~yq*k_UgLu?)#PO$lnRhe87!L&n1&61JPl3Hk@6^T1k=_nJUF_4QfK%E?J! z4kWR;FC(`Fnh4rj9xbom*mxFR9^ zON-dR&ag~pdyfs>Su<2;aG3wpaotQ-O`MHmv)|a|YH&Z(Ey0SP2Vw~O?z;wEX}!@m z?6dcV52&AHRa~E)hJ7_Ae@Y@dHsaMa7`0tly}jrax#K&F-%>YDWM#myxg}#1Hnbb0 z8SIdadoyy|?gk2vV>9l@>ctM=T?y#)muljcUtb@skwpdGP%FgB2Rmi^aXsEdE)PLWw znE}1V-Lg~T6(1irwlcm>3in?Xaczh+N4r_5%gQgVQKjQuJs2z5KROiomAcx&=xTY<2VpDdslC{S-MB19S9v zp#AtAXWR6oyi05E_Qv?me?NH8I~wV?Qn$VM*8C0L!O+kO@Z@u?Iud@B%=curelynuia8rkSE89Mb2J6&t4jCiryje1H zef?!^;L2~fD6SdTzc*_P&KO!wq472tTUo;y9UhE!!0X+2?rfJ{`DxYqf^ieX2pa|< z5S4UhlW0W{`adThcp2@-%B>4wz+4j$js8;+BY3NruM9Ybbc$LYEm3TeEVix$DXI892z<~aSE=k z#xoTT#7fD@$ti*iRVf;c9`NXV(xjM11)QkgPcFrxfP-vYY(G$d3mngq9K~M7&!0bE zD9|fm`Za7{$e%N@(Qbtha2&qsS5F=r8_PJv?jCG^8-7O(M4c6qYD};u^s@~tOG6@;43E(SAWP;oD>Cq z?b>VZGeN*-bd#Y%bsAN>`?vvHR`BVQ%$pq*Ne8*KtSmfRTiZU6Sg5B$)d-wT{eC$W z5n#$qcUHeQ6H$qjV)XkqW%mscOFuv- z$0NK)SETGWr@ds1#8ea&e>-#}@cfiq@8G*fxBZH6FckHSg74Nqo?b}x-l z7{CVIWvwVeMsk=9&U--OQ$K!qiv9XT_Ff}H`JP@d0*mK*&`f*0j^tVk!;Gb+(*l;7=x891b43eB{yc|HKwIw zWR#3Oc^0cuhFk$f4p!^``jh>2x=AJRp}4FtG97st83*sBvVo7zHB05(Dz)h(q&9M< zoiF*rrBw!pTM^YYJU9wGC1dK^(TI3R-)UjD%X4Ds%xbs9pi zGo0IXFobi}ZFDE%QhP%nT_?!aHGFZ(_g0renhHj;kaKdVRNroLb#i$=^SgKZ)j%kJ z7liRV)jq0?<@BqA=8;5f8L`A8-PvIO{gtMlEe!T8)2qyqxu zQfS2nStG-hp3JU15JxeSa~T_Mew8MYwWlP^*Na7!bV(TSgDAFum6f$Y+ioz$;BzjLORWLa3^&e4m4ZBY)spVQu%+gR`7-Hs@-)ejv6MhaM_MGf_Jq-I5Ti3_RzoG%5P zjX&@IUN;BvQG*Kzh$L-TqEleEqtrb>qedXK1llm^4@oGx@n!(o&I_gom^1bza^zYjt(?u%7Pj zYEHw-B6;mN2f`)`W;k$?68P=o+{;pPva%A?4Gi|mlYdy}fnWi|(@P}9hZCE5%={NT z)YLZ?ht@y5eED+1%EDsuS2Imy!;jEwc_z06B3FCVBtMT%%f^C8^(P2)dN`}5Uj)n3_?I?=MAwo|=*39ysiyF?AD;WU zh4p8E>+QP?UZ|ar@+FX>Y*tn2%V({`vvafj<~&!%{n?NqzFUhF{BE-yPGn5Vc(>|< z*^R=4%3NpKfg_L|ZA_wP-pK!#BfTCt1A;s6Ce z2ng4YX4>9O3jie0(422=Z6%6{kDu^7O(9l|RNk9dTzq|R5HD4nmfo7C@r z0tcRwnw-31_UmhDCD^nc-(5Lbcrb|0ySZh*l{3iYFiSI{#~(SVsH)bl0QK4k{B1qg z0VA)^k<{XslSMpu74PYHbq){f=NVKGUenHF8LGTzejjWl4&+RaV32jOL187ub78!q zl<9Ibarg3b|2w{GqJd~e>Y-P_k!hduddlio_^s_88tSkk%1-WGR3~DzPlx^7>U%VKDB)+i$IMnZto28HRrO=+UEZP8EB*Yinx(iHV691joJ2 zdjUa2i6{lw@jlyyvxAI#Fo!{TZ=Oj*JsUGKGn0V87P4o4^tPd4Eg_1@UZ#~r0aXsP zh~4cCt3u{Zda&L;EGcb}&W~I`qYKzsSrwJk)FhwB#$HH?jrB-z@NR6hgoLlq3JPLk z2j-HJl7;oPwd&8!%`4$gp6t9WDq3}hieXm_i1Tqkq`9uH=Vo0oyNw%z#zuQw_dxk;ePJ&bv%$Lk~m*d#mRc@TH}{w z(dY5;A+KJ&Y8xFLt^Q}tWC0|fBSA*`H$JipYI*6(1fT?a7{wOt+kGZ|yt}I;lUHN! zM@vh~N^?^aVSZsDjpjc~NTw)A-q+XH0z?o$dwVrEmPW{dl5-Jy7V_r(dlGDHY$5Me z+O_rd_aO1{vbMIC59lzbj;=1RzJUQjIeB@Sb3{ZFdfM7swkj%}@lZXEOGm)wMFvpd zTzv=(@7ez7CJi3Rlomq6mk24s07*$ECaWkQXmg%58uoT}q#)PZ#~~t8Eg~UNFTlg| zo`;pSH8CM!kd=q$8zaa5;NW0}8puBPWCB;k6-i*oNiO2G%)Xc0IPV_N%vdoJUR^B$ zw0>H3^=0cXuRdgJWZnkb+hFD5a^6)4s{tWzHMq))ioP0YYEHATvd)9;&!dOS7M=pC zl8YvP*$2*%GaDP5CwvgslnD8e&}EY2xJG;#Xg8(+fkh^?;{~ltNSV!^vr=6}MMcy= zNh*Re*7A&tP_>|dKocl8%7MCPfm6lEjAxB#&Db(t#R%2-*RPWx(Sv92;2_rC``zVw z@Z-n)j~+j+0yVcfQ1^5bN#wfPc7&zt+GsSlKk8N;}#k?!iP zByZQt_|@z&yEny$7k}srhg4w+IFk+RB(bmuX<7C=%*3k1D#l)7ljAS2u4D#5J&1<4?S@MNNwqq#$@=V+l&QCXP_m;6jLvuH*(wn^#MG0uJP@Im%X%|2T(jr6< z1w@TIdFM?w_9_$7M4!Hz825(yKn7$HQcfAex$OeQLg}#H?6H-G9;UPU$AB><;=ya} zp|F-5YTNymCZTSEz_ZBkxF_6?z)V;n4Tk=W&u-JSJcmZ@241*-AUY>@Rv%1tygbEw z3$W|(Ea*1Tq!^UkhoeqYcEjSSsWb^fR@?>6%X!_vhdWgZ+pwu`CR~Flz%W}C=lh8D zQ)!p=X2-eu#rxSHs-#Sxm86_+mgWkfWYe$nVH=RLxua;%KutJn~QHKufg0XiiiJ0#I>zev+xBfz`e%a5G1{2^_bynFM@ zWbZ{b%v`#0Qanf{Sc_mZ4uS=JS!#p#Jq@xWAYN}p8N*B|xFcDVd3y6bCC4Rdve0Tz z_L)&Fy%f5V@0L|K$KaeOsS$+0HIG?1wAT3+1`DmmA=V-*W?aOv%pE)&PJGLF%(d%5 zWl%p0-*>Q5EU;1n+8m|=EZPNj%TC7AQT7lPcYejcG8~m)F)2*T+Pjr=u)xGhHXRJB z%so)@!N%-23WA2@49cGzh}+so134v-e@{Pkvsmn5bG}`3OdO~><*7{4K~LKh9bH?_ zp6*CfWxqmXXiDwxwZP_wVwOsW8ne}TFu0xUGu2m^D-}hfOOIh{aZIZkn^Nq;To3a@@Y8hDg5Mni%s>lVOR#X*udrZO1hgbARl|Lf@yettB`gSE~R80uFE*pP}7BXXqz zAT(AVL$YJ!x0Xzz)2JB+|K1Gp7OfUl^`boeFflkFjXctcAAZw!!TWKT^1)sQgQWyL zT8e8N>HCFmhgJ(9o#8GOt~ZnJ^I;?e!rzgTDjz7&?$4Fq@f0q!i-ctB#BbIg_@6<3 zXj7DK__gF}EQ{ga)ilzmPHW$sq_4!ckbuQ7xTbS_xb-wQ`ERQeAz4j^B26}vwQ2xZ zY(#dt2b&9P=N$5{c~pUFqq!$sw1OJ021qf2=7wxs(iXuJwjoy#(^B#H=ntIr6Q8dc zT$NHEnElYA)!Z|a^b~_bQ9yaYQ=tTG)1;M()wX^>t1=&fGmzoy4y0sWxbVsG93dWr z0IF)O^E@pq)E5c$jaZUb+02M->N|FPJA>KmU@*!AYPq5NR}-mLK#L1a8`J?eTZ?hh~ECS2YFL~0rVj9K3bmco1l|YC)$5~3CENK`ilgSs6aTt z^PN2$YsxjC$26#_q(B)#(|@)h3GaeOwKgg3*M#e6^ltj#$b2o-d~B3@#Rh=KfZQof zvO>%dd#Tft4`I(ZHc@(Ax2waaTlzw<1ZB@2t3^?Gah)d>ve}WmiV&s&^vH{x{{k3rkYACz^_6A-Qn1QZ+xXlYz zOHs*sqO3+pCW$kGWmVOQuFU#EU06G*D3x#UW9mhq+#yzoy3}Y|1fdMx=Ull-8$EqU z@^{ySGn4l%arUvw!wf@^tmq)=SQWAW!pVuCq;%}#156dP2N~i?eM)APf}h`nU~E63 zpIDWbQ6K&>NnP8kw?WWy#h+>Hp6A(0F2rrhX6GVpWH^h1YA@s-Dg%6&Qs>f8S z!QVbJx5f}ER}`stIMF5wz)ccZ#pP>-=&MA3RPEqH)DhNKE#d4X62C{e&M}JtM9)?} zx4D-8gN1?cNEk84%b!R2wGTNw98-hZW8SC5$M)~e48MHGe@sS#pb1t3$J8Ic`i5f! z4bVaN_F>3(P%w^FuonjWg>=Lh!%8CthYwo;pt&xg%%F>~KZ*x-guf3%aYBI`fA8`K z8>9yPqd_fPO0~xDJ7xvx1xtLixK$mv+=d1vrN~RUwc+ce}R7SiAE$!;s>-?{_(E&z_@S0e)T)e-Hy?(M2Tu>&5A~ zgzAL!-p2m4SS6oojy;nUL=JQnY%l}D2c{Zp$KRtr!-2g0kH`e!d4vtB9v@l;AXAG& z3b;j=QQL67#*^-G2w!llrML{_3Z=iE-$bQluW*n&mkKe zyQ^4(g#UQ&!ida-j;-V19inr0y`TxU=$XHyN)ir|+AzQ_TPX~?WXO@OGb$Q?NfpED zH7K#|TW-VFih%LhWuV+9yX5j+_wC4`&A(38g&<+OHwyKM*J;5HuH2ABRQ5u!68k1Y1*0L*iOP%P|N;@=tW%B6EpCvltxvX^Xk z#GES>H6l1$UZc#X7y_~Jd$+((z)R%AxKg?uC!G!S`HYdpog_ssPMlPq98ny zg=4b-I!twrUuQcpv%OpV135(R{?hAmrr3~Pchhf$`d@4FY@yX^3B$EE#K;OCchgDQ zV;4*tVL`DfW~n%01qk4VApooyVu4(YCo@jA=OCR%j3VmY?Gd=KK*b_!MES9J#V>IA zsDMBjW1Wh`U;@GJY{n}ul;c8d z(1X{Y#ieYh95$E#XK_j-l>`_ODbv)%ITM^-;AnOps|9k={iDs|Xjfl#zhTWRX^n7I z7Qy&XXSMos8W594j-A~n{_z7TLgai~!Y*^%lO`l4tl)_8f#@Nz^n5-2<1bEn$ew5! z%o{1wJPpDE0~iQN!dIh2N;C}GPc-H%6YbPoG)zIf^(`4-W4UQf_SAfF$(0lD2X#ae zrNM3~=1=!}P9FH9;v-zWjYj46f8wfA1c++mix+j8`V!rNS1~}HR~t_KeNlDkLpMD* z-M07}I?TF*A-dX!8{9W8HZjA%Z3JE~P`;>~f(B z8i;o413zW)QQ0r&P8>f`vYkYc8_RN{(sudF^pLz!jL@xZgRXL#mOj&Vxk_Xkm>cJIs*Y__eVW!@I?SgPswQiD&YD{qHa6RK#!~QlG8Sl614`WsI9u2o3dtH>d$Ba~ zTRB_iCzf}^aadG(OX`!5`oYGX8lkB->FF;FId!-~8o!NwcllI3wmcUc9Q+?-7xqQ~ z2>U-qS6hbP^YQohw*?5~Zy;lI6JkVPo_>SgN-f4_F(KTURK;0k(CSrWKmZl~;h_Wx z@|E^=Hg7#%=4eudJKJp%|MQUQTem`=g@w6&YHGSE0T9M2si0s)&&x~78Gjb!Oyp!_ z5U*5!dKFcUIf10%>x>K>P(=^|XcLeKdJOP78EQU0K0TSGrKRsHD=Vu(x&`EJie6V% z4yuEsTy}ABcVC(P02#n&e+E$U-(_WGH2^iW1}$P0$rxV3~Ip6K2_}jKb}J4j3-nqE1>ZN?^2;B9?270OFv0yC`wL$QF)7=7~53A!NEZr zpd$(ja&mT!9UUDzkT9$qQ2%)avYI^e^YfRk+YtZwVd14>|E{>0cX70e3=pZMwKcn? zv(p0gm~8dQs6DUT|@8aTOZezrSys*^_8wXvn^< zCNpQbpVB&r$Y9~J5M+y<3b^Yan7=|LE52iSKT_oRBcj07p@rlreozyx=u{@UJ2Xlkd(W8w|t+)O;L9D#LG-6S} z+H@-qD7Ku941Mu*QCW`uwwBgotz7NChMgZ_7bXJs9KE-f#|Egyyl+Q{$59L^?-F0a zk|NBj)&zEEm;}U@5x0AmsfR?gJ+Y^BV?341irg`kT5BCm&2uTBma>GYrEpe1VOFq% z30xAu)KWlEG`>*xeYzWiJ%KD3O;`N-tpYPEivIC`%>8cYgun0ZRl^$FKagySbo?2JAq zPo2|!a^7R=e4Av9w3sn2ZHZT+`&IC9ihT3u&*E-}zkkYOP>B-Pt|>K-+6+HI6ql6n zfU?&M@a2aV6@YWc#n+q5ND|ET_@STY6bmG`VzNk0tT7+j+TekED%he zZ{J-EYflS^vU^u-zG))HeST6Yr%Kd;4E3)C=@7!!_pfV|FG#s0`y2ZFe(sCTn6zpi z-3KX|?U1;`fy0|)wyL{9RnLQiYyS-l`rGA~8LVfC6C?u) z@*ov)@KIjPa?|@HC{ptpJG>R%)6#oimFb5EPQj~BR1;EAp!nJz&taf#qOMN& zk@K2nUW&}uqZ}tJ(J}M~eGZAx>R(El5dtwZgV!A1SLo?B8gUNn0tCIp;&RP~R7L^> zT`9)=zW^)C4*PfCg;>$Af};9>a*{L#NB&`n_qTg=^eE`C*YvpPw7ZOtK}^t~h0w}e)C7>M00zDef?~(1c60`D*X5>MTH)@7 zz$3|ww{M>f6sz2ki4Vz#JA|Mm|N{RHglc@V=#_bactpTHj0R%k!uz zp|x(w5mZ2T*>N5TVS^f3!Q!StI&kfYTK*nU$J!kB2r|b6!q#6 zHh8J+Bk(=XUl?(`FJEy=syw_+Q9#(diA~!q+};|gECA9!6`pjN zFz-t!Dku&Xwfup>ilFLm)VNUMPL~Y4iSD1U@vFT`qi-!axz>MTMQQQ4Iw7LNL5h7z zeUN^6J6H5uU4|3)ucxgyS1yo{+^YojPBHdpl+B5Gi|i{-=H?8b9%^W!qZ5DS0Ug(n z_k29M{sI9yG$A%FCZ7vS+IWG;DJuIk3=R~~xx>O%0;}0xHf`|uO9EU+L z3=8M_%)!o7q@aJ;PWuGF;e^mh2TuYU;jnuY&8#Ld!n^I14WQA4qMnPW)@bIgEyCKZ zVS5!0C&f-b!ne5JF>q&QXSLOFj?Ew}+#mIO%Z=MQ?hpFOvm;en&JAqNe8 z+!5GxR^}b5er~Q*74Qj8@(%b4^e*_$Y-wHmLv_)cbP3Nz-BI6#d=>f?5`+0K7vDQ^ zqUrNe@2@Fp=u|xUS+_ktaVr!!xyUl%lZDL_<9VjU#_TM@= z^Khv5_K$yOu}nuPBC@9$DzasXFqM5vITYElS3>qJMhgl>_C$_7PKZ#}NoAQ)30aOz zLUtM1Mz-gk^Lx&7UC;IV{q>vcn*ZjS@AtFapL=<|Z|gECRri|Q9GZn;qx9LUPphP# zg`J^Ry&_jjOw&eZXlr2$@AgeZ*VYKx)qZUVAv}ulH&h4wdcqK^USFLL zudc~?bEoiI98lbC6w0sEiZ_qhE6j$@+q|_RRAd&qzd!6C<8vzbP-T~MxMTY7sl|`u zd+j!B1WPtN^CxDHEVEeI=1~=W6AIj!*W#^Hy((Il4;!xL%&LV))cWciF4&vzIyeo!H*M^fNY&!G(aHjW{kWtNk_TUCc7-@?}-(dT+U>z1@q4e*kc z?}PL5^D}{&eDLQhMe7~;MXjx^$~chZOwAvM(voAG>)nuY^6u6cZ{qc=o}#{M*2n(5`p-%@v&T5VKV-Y?{m;s+8xxVmRMfDr0)vd6He z!F9-xdZDE*<3ULXtjN1Q@vX+{o-~pb{sQ>D<^h^sw`ppG8n@WK&$G-F^W*PmOX`2PR z9LTD_dNytP*IK$XDL-M1Uv3X3v{Wgp(fZ{4(xZ7NwT=T9+;C&1gR}~&kw=q+#P!gr zuvETBU+2~Ne}KA<3@}=-e{U9=<+MsfUS6I#T>OlIrK#@x zb(-nZD!*x(A$ZsQ&Z#z$xw;RsY`O}x4Q;T`^YPaJsnT$LJcQ|ZBIkGcX-Msm`f3PF zfy;{+ua9YRqmP|Eer`J*$k2_|PP-^zw(5R!G&8j@<7>$AY}Z#AjFGvhv%-;h!;~I? zpu0VJczL(JNNRlITnATku&m?#{skd0&(^g7QQ!CMcIj=~TpFxorG@-_{Dcq~#KvwN zzPaoS(M_mmv>L^aY)EtP18ZH9TJAS8N}HEXayGR2L~|VIJrw4s+tt~Lq*8f`8@|Tv zjH0n5LkM2UNF0pv_P%Qf6y?ghZ z&ae@<*ukX>ZtGNV49C5+E>#1O_|g|}H-&$mw%J(D?7NupU-0rXp+mU}s^A2EGK}8J zJS_@pdoN&F@Alb-NVmt6#Mt4A*Ix;hVcziaw@>>v_ky!geKc&5;-oO$IRJ%=H5WsqXwWBg+yMA~A>u zfi#WvepFs8w1jXD;!THI=(DnTVnZr+(7|{hxIuy z$!09F8v~W0d$r$V`m<041qF@W@Q@OVGFzd5sr=NxxY4;kWdEal1!S740fNLcYVOg> z4~g+m%Dlz#c!1>r5#*3AJbU+^con!XQXC~5EU6lJTtPyCI}pSLObNs%MLhm{4eTl_ zxA6;;b(>7*?)0VBd+xtT>a3Y;J=l={oh8P)yHBv zm?keRCtEz2OV8N&#$ip(@D!t9K!k-QK26~UZ&!oEa$XJ;#%ZAIl=%WqwL5ntF;zeN zE~1^uc{7vUI_crViW4B|eh7x*EzO%M?SC)xc{Oo3Gl2FQY!nq5b~GNAlw|BA*6x8w%y68-&^AgsaL%oPGf=hD;L+jy;z z!C&GB6ZGt2b?l!)XmIL6%K>bw0R>Xv#zO08*~^g~@|7z8Xu72Vjy!YB(iA4o z>#6_?nZcv-X7gwS^fWjwaVG1re>*<)*oj}0x#~Li1@(=1#mldc>I7X^+X4aa9avEH z0Ps#Eq<9a!5sM%&4-Pv(Gm~&Of5IkxLcrs-J3#3$cpJyfSeISve*PZ_Sk<@fI&=xi zfh4>zZW`ZZq7r4qZbJ|u_ug`LC-g%BO|?ns=jWANGA|T5Lv9m$ec|J@`3 zQf^L=>RW(cU)%*ohz+4B40xhN>zbdJydyd5rM{4WGD_AV=|_pAKhK8kBD#LQQB&(; zX*FwZE9U3(%Gwb^E&?wP&!+v`=snKxS2G${dL$1XJea27%^d^@;@H)%;UZxE4-eG` z`B+05UlaV;>YUQjAJT|~6}z_8v=376m?JxN80VV?1k{_!z}$E28~aH5?;VQS=!ztc zs%6@VF_psZwNYSx)nJ!IF3eH2iY7}+A4X~>@?xt!h7O;yU89A}e-={l z5|xLx9v81)Unl`e*b|}r)ixS{JVb4r`%TmB7Pf=whDDysdGK14&O(|$GFs|)#iff! zlbyJqWQPQHvq_Zd>*?{$`PY@n{5xHJ9ju|wP7#gzMTmVuUuLGVM}Q>Z63D6*nT<6l z?d^B(#>J^aT22|7UX)?V+jR|o9#~1Riqs9Qk4jA-O~IKkw!6(i6h{}L+K@FNWl@eqrGg@H2OOq)=4PDAj-aCQlN~d6}Y54xt+R-r$t5mIQu8^ zdCzr+Frs{d&M6`H<&%D{+dH+K&?CEn-=lM6&o9Tl=tabrg`>pH7$mWZ=@I!2g7_T|7mLWw zVX?(1hbi_vDgcxs7gP;cbFe>xUN4>Oy?v7-HpWd78&*ncXtwu6QITq2lt|{?+HDu3wpBb{xh~i zhAyMx5q2f(wLYA-A`uJnGjP@}HpTK^vd8{9WK&lm6Iw&=pnJsO+6W5X{U5yi_Nm6b z?-sZuV(U;y-v0DdF%-j~U&0e+W z?m}VZ!@5r>pK^^}i-}VEG+5|bUKNfpZpPJg!amuJHTlRoZzs? zbnNQzcgkZu@)%43L55f>B9H!BJd_`y1eVa7P7OrKfd;?Fi5nCV!r&C(w zw|`&pPaRtC$2c_nbk;h_#K_Q2E|)CPi_qRp_FcsuR+;irr25E2uM7*_?lm>#cmlKz z0~gCYE0*vQJAx8qmEBDY^Qx@2_VC2?a}w{HI|Eib$%Jv)UN0zdnZiaqW`h{v6LxW5 z$SYl+2wE1>X%o;N4u`$Hb}*i34|jwL)*iVyBZOWP@M8d#$Rkui&H&Kq1B5$^mqa7T zxQ$(;+21}s_uIZeE2`&c_~UV~#LdPxO&5a{VW$`}cgj&cQ7`oKD@SZxnzz-we5%Vu zC%Qb%S3afU-NUQ?p75J+^9p0zI+}U0E*L%zqJM_tl?);$B66fbfQm>-NCD_E2Scl3 zLQLiR$WDmJ9_x zv%o5Z6ufZrM2ny=V21G_j&5?nm%N2ZgYA)6J)#I~uNyDBif`aJFy$sT0XMoD`5L*` zx+!O?rYK6~ng_Vy4VZ5FvZEn&1y2_wnanz9tRqsUEuFfOgXAsK0l6PZH$;BZF+u-= zV?XmT?RftK(yVMM(99NVb(_ta5)Q|&&lMt0#5b0o{s|%RL zJBP`KX&9(~`p_cDr;5WyK@_d>I6X!k*LK-4nX*#oy;3^_Q+IOvZf#sCGcq{1n+tY* zyuE9IlGyHNzUtvP`^XBp_i9RaEt`{scT9OVSz3;qx6ggae;9Y03DAyd6WOFph%O;z zh*x@roN>ZC$7K3gPi;wZ!{ci6Ner{Y^1Xv`Fd@Ye@ zM52lJASX5c6=L)QQ;=&iTR`JWpnq?kR z;u_3l@`iGeT#+R<*|?!Oog>1(PNOH7=jEKLUZVxr5o5h#2UDJ@l8>uyc&1dUw^dhgXH>X61BgK=8QkAfQaD5M$3^ zQ(W|k7<5gsv};Xmk`Xn<=ge}wkEMbLYFHbQaT``JW^z?9a`oHvbVVFPkNAPmBtUYf z{^BJyp%{8Xiz}bBx}9$&U%R4<#E;rnLJL?E^AI62Yj`Z(3Xak!Gh0&QKFN*Yb><>*8SWtv0d88*Rw|s7`uNg zU5f@*>!m_c%KB=L;+Xu_(Ni@2^yjvm+2?o`P8%q%DIsgCw diff --git a/docs/en/server/performance/tuning_framework/oeaware/oeaware_user_guide.md b/docs/en/server/performance/tuning_framework/oeaware/oeaware_user_guide.md deleted file mode 100644 index 45d128a3..00000000 --- a/docs/en/server/performance/tuning_framework/oeaware/oeaware_user_guide.md +++ /dev/null @@ -1,521 +0,0 @@ -# oeAware User Guide - -## Introduction - -oeAware is a framework for implementing low-load collection, sensing, and tuning on openEuler. It aims to intelligently enable optimization features after dynamically detecting system behaviors. Traditional optimization features run independently and are statically enabled or disabled. oeAware divides optimization into three layers: collection, sensing, and tuning. Each layer is associated through subscription and is developed as plugins. - -### Plugin Description - -**Plugin definition**: Each plugin corresponds to an .so file. Plugins are classified into collection plugins, sensing plugins, and tuning plugins. - -**Instance definition**: The scheduling unit in the service is instance. A plugin contains multiple instances. For example, a collection plugin includes multiple collection items, and each collection item is an instance. - -**Dependencies Between Instances** - -Before running an instance, ensure that the dependency between the instances is met. - -![img](./figures/dependency.png) - -- A collection instance does not depend on any other instance. - -- A sensing instance depends on a collection instance and other sensing instances. - -- A tuning instance depends on a collection instance, sensing instance, and other tuning instances. - -## Installation - -Configure the openEuler Yum repository and run the `yum` commands to install oeAware. on openEuler 24.03 LTS SP1, oeAware has been installed by default. - -```shell -yum install oeAware-manager -``` - -### Service Startup - -Run the `systemd` command to start the service. - -```shell -systemctl start oeaware -``` - -Skip this step - -Configuration file path: **/etc/oeAware/config.yaml** - -```yaml -log_path: /var/log/oeAware # Log storage path -log_level: 1 # Log level. 1: DUBUG; 2: INFO; 3: WARN; 4: ERROR. -enable_list: # Plugins are enabled by default. - - name: libtest.so # Configure the plugin and enable all instances of the plugin. - - name: libtest1.so # Configure the plugin and enable the specified plugin instances. - instances: - - instance1 - - instance2 - ... - ... -plugin_list: # Downloaded packages are supported. - - name: test #The name must be unique. If the name is repeated, the first occurrence is used. - description: hello world - url: https://gitee.com/openeuler/oeAware-manager/raw/master/README.md #url must not be empty. - ... -``` - -After modifying the configuration file, run the following commands to restart the service: - -```shell -systemctl daemon-reload -systemctl restart oeaware -``` - -## Usage - -Start the oeaware service. Then, manage plugins and instances using the `oeawarectl` command, which supports loading, unloading, and querying plugins, along with enabling, disabling, and querying instances. - -### Plugin Loading - -By default, the service loads the plugins in the plugin storage paths. - -Collection plugin path: /usr/lib64/oeAware-plugin/collector - -Sensing plugin path: /usr/lib64/oeAware-plugin/scenario - -Tuning plugin path: /usr/lib64/oeAware-plugin/tune - -You can also manually load the plugins. - -```shell -oeawarectl -l | --load -t | --type # plugin type can be collector, scenario, or tune -``` - -Example - -```shell -[root@localhost ~]# oeawarectl -l libthread_collect.so -t collector -Plugin loaded successfully. -``` - -If the operation fails, an error description is returned. - -### Plugin Unloading - -```shell -oeawarectl -r | --remove -``` - -Example - -```shell -[root@localhost ~]# oeawarectl -r libthread_collect.so -Plugin remove successfully. -``` - -If the operation fails, an error description is returned. - -### Plugin Query - -#### Querying Plugin Status - -```shell -oeawarectl -q # Query all loaded plugins. -oeawarectl --query # Query a specified plugin. -``` - -Example - -```shell -[root@localhost ~]# oeawarectl -q -Show plugins and instances status. ------------------------------------------------------------- -libthread_collector.so - thread_collector(available, close) # Plugin instance and status -libpmu.so - pmu_cycles_sampling(available, close) - pmu_cycles_counting(available, close) - pmu_uncore_counting(available, close) - pmu_spe_sampling(available, close) -libthread_tune.so - thread_tune(available, close) -libthread_scenario.so - thread_scenario(available, close) ------------------------------------------------------------- -format: -[plugin] - [instance]([dependency status], [running status]) -dependency status: available means satisfying dependency, otherwise unavailable. -running status: running means that instance is running, otherwise close. -``` - -If the operation fails, an error description is returned. - -#### Querying Plugin Dependencies - -```shell -oeawarectl -Q # Query the dependency graph of loaded instances. -oeawarectl --query-dep= # Query the dependency graph of a specified instance. -``` - -A **dep.png** file will be generated in the current directory to display the dependencies. - -Example - -Relationship diagram when dependencies are met - -![img](./figures/dep.png) - -Relationship diagram when dependencies are not met - -![img](./figures/dep-failed.png) - -If the operation fails, an error description is returned. - -### Enabling Plugins - -#### Enabling a Plugin Instance - -```shell -oeawarectl -e | --enable -``` - -If the operation fails, an error description is returned. - -#### Disabling a Plugin Instance - -```shell -oeawarectl -d | --disable -``` - -If the operation fails, an error description is returned. - -### Downloading and Installing Plugins - -Use the `--list` command to query the RPM packages that can be downloaded and installed plugins. - -```shell -oeawarectl --list -``` - -The query result is as follows: - -```shell -Supported Packages: # Downloadable packages -[name1] # plugin_list configured in config -[name2] -... -Installed Plugins: # Installed plugins -[name1] -[name2] -... -``` - -Use the `--install` command to download and install the RPM package. - -```shell -oeawarectl -i | --install # Name of a package queried using --list (package in Supported Packages) -``` - -If the operation fails, an error description is returned. - -### Help - -Use the `--help` command for help information. - -```shell -usage: oeawarectl [options]... - options - -l|--load [plugin] load plugin and need plugin type. - -t|--type [plugin_type] assign plugin type. there are three types: - collector: collection plugin. - scenario: awareness plugin. - tune: tune plugin. - -r|--remove [plugin] remove plugin from system. - -e|--enable [instance] enable the plugin instance. - -d|--disable [instance] disable the plugin instance. - -q query all plugins information. - --query [plugin] query the plugin information. - -Q query all instances dependencies. - --query-dep [instance] query the instance dependency. - --list the list of supported plugins. - -i|--install [plugin] install plugin from the list. - --help show this help message. -``` - -## Plugin Development - -### Common Data Structures of Plugins - -```c -struct DataBuf { - int len; - void *data; -}; -``` - -**struct DataBuf** is the data buffer. - -- **data**: specific data. **data** is an array. The data type can be defined as required. -- len: size of **data**. - -```c -struct DataRingBuf { - const char *instance_name; - int index; - uint64_t count; - struct DataBuf *buf; - int buf_len; -}; -``` - -**struct DataRingBuf** facilitates data transfer between plugins, primarily utilizing a circular buffer. - -- **instance_name**: instance of the incoming data. For instance, when data reaches a perception plugin, it distinguishes which collection item belongs to which collection plugin. - -- **index**: current data write position. For example, after each data collection, the index increments. - -- **count**: execution count of the instance, continuously accumulating. - -- **buf**: data buffer. Some collection items require multiple samplings before the perception plugin processes them, so the buf array stores these samples. - -- **buf_len**: size of the data buffer. Once the buffer is initialized, **buf_len** remains constant. - -```C -struct Param { - const struct DataRingBuf **ring_bufs; - int len; -}; -``` - -- **ring_bufs**: data required by the instance, sourced from other instances. -- **len**: length of the **ring_bufs** array. - -### Instance Interfaces - -```C -struct Interface { - const char* (*get_version)(); - /* The instance name is a unique identifier in the system. */ - const char* (*get_name)(); - const char* (*get_description)(); - /* Specifies the instance dependencies, which is used as the input information - * for instance execution. - */ - const char* (*get_dep)(); - /* Instance scheduling priority. In a uniform time period, a instance with a - * lower priority is scheduled first. - */ - int (*get_priority)(); - int (*get_type)(); - /* Instance execution period. */ - int (*get_period)(); - bool (*enable)(); - void (*disable)(); - const struct DataRingBuf* (*get_ring_buf)(); - void (*run)(const struct Param*); -}; -``` - -```c -int get_instance(Interface **interface); -``` - -Every plugin includes a **get_instance** function to provide instances to the framework. - -Obtaining the version number - -1. Interface definition - - ```c - char* (*get_version)(); - ``` - -2. Interface description - -3. Parameter description - -4. Return value description - - The specific version number is returned. This interface is reserved. - -Obtaining the instance name - -1. Interface definition - - ```c - char* (*get_name)(); - ``` - -2. Interface description - - Obtains the name of an instance. When you run the `-q` command on the client, the instance name is displayed. In addition, you can run the `--enable` command to enable the instance. - -3. Parameter description - -4. Return value description - - The name of the instance is returned. Ensure that the instance name is unique. - -Obtaining description information - -1. Interface definition - - ```c - char* (*get_description)(); - ``` - -2. Interface description - -3. Parameter description - -4. Return value description - - The detailed description is returned. This interface is reserved. - -Obtaining the type - -1. Interface definition - - ```c - char* (*get_type)(); - ``` - -2. Interface description - -3. Parameter description - -4. Return value description - - The specific type information is returned. This interface is reserved. - -Obtaining the sampling period - -1. Interface definition - - ```c - int (*get_cycle)(); - ``` - -2. Interface description - - Obtains the sampling period. Different collection items can use different collection periods. - -3. Parameter description - -4. Return value description - - The specific sampling period is returned. The unit is ms. - -Obtaining dependencies - -1. Interface definition - - ```c - char* (*get_dep)(); - ``` - -2. Interface description - -3. Parameter description - -4. Return value description - - Information about the dependent instances is returned. This interface is reserved. - -Enabling an instance - -1. Interface definition - - ```c - void (*enable)(); - ``` - -2. Interface description - - Enables an instance. - -3. Parameter description - -4. Return value description - -Disabling an instance - -1. Interface definition - - ```c - void (*disable)(); - ``` - -2. Interface description - - Disables an instance. - -3. Parameter description - -4. Return value description - -Obtaining the data buffer - -1. Interface definition - - ```c - const DataRingBuf* (*get_ring_buf)(); - ``` - -2. Interface description - - Obtains the buffer management pointer of the collection data (the memory is applied for by the plugin). The pointer is used by sensing plugins. - -3. Parameter description - -4. Return value description - - The **struct DataRingBuf** management pointer is returned. - -Executing an instance - -1. Interface definition - - ```c - void (*run)(const Param*); - ``` - -2. Interface description - - Runs at regular intervals according to the execution cycle. - -3. Parameter description - - Contains the data necessary for the instance to execute. - -4. Return value description - -## Supported Plugins - -- **libpmu.so**: collects PMU-related data. -- **libthread_collector.so**: gathers thread information within the system. -- **libthread_scenario.so**: monitors details of a specific thread. -- **libthread_tune.so**: enhances UnixBench performance. -- **libsmc_tune.so**: enables SMC acceleration for seamless TCP protocol performance improvements. -- **libtune_numa.so**: optimizes cross-NUMA node memory access to boost system performance. - -## Constraints - -### Function Constraints - -By default, oeAware integrates the libkperf module for collecting Arm microarchitecture information. This module can be called by only one process at a time. If this module is called by other processes or the perf command is used, conflicts may occur. - -### Operation Constraints - -Currently, only the **root** user can operate oeAware. - -## Notes - -The user group and permission of the oeAware configuration file and plugins are strictly verified. Do not modify the permissions and user group of oeAware-related files. - -Permissions: - -- Plugin files: 440 - -- Client executable file: 750 - -- Server executable file: 750 - -- Service configuration file: 640 diff --git a/docs/zh/server/performance/tuning_framework/oeaware/_toc.yaml b/docs/zh/server/performance/tuning_framework/oeaware/_toc.yaml deleted file mode 100644 index d004062b..00000000 --- a/docs/zh/server/performance/tuning_framework/oeaware/_toc.yaml +++ /dev/null @@ -1,6 +0,0 @@ -label: oeAware 用户指南 -isManual: true -description: 动态感知系统行为后,智能使能系统的调优特性 -sections: - - label: oeAware 用户指南 - href: ./oeaware_user_guide.md diff --git a/docs/zh/server/performance/tuning_framework/oeaware/figures/dep.png b/docs/zh/server/performance/tuning_framework/oeaware/figures/dep.png deleted file mode 100644 index 493f118a9a822fa16f8c8375ba9261c1e10ac935..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12645 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 -``` - -示例: - -```shell -[root@localhost ~]# oeawarectl -l libthread_collect.so -Plugin loaded successfully. -``` - -失败返回错误说明。 - -### 插件卸载 - -```shell -oeawarectl -r <插件名> | --remove <插件名> -``` - -示例: - -```shell -[root@localhost ~]# oeawarectl -r libthread_collect.so -Plugin remove successfully. -``` - -失败返回错误说明。 - -### 插件查询 - -#### 查询插件状态信息 - -```shell -oeawarectl -q #查询系统中已经加载的所有插件 -oeawarectl --query <插件名> #查询指定插件 -``` - -示例: - -```shell -Show plugins and instances status. ------------------------------------------------------------- -libthread_scenario.so - thread_scenario(available, close, count: 0) -libanalysis_oeaware.so - hugepage_analysis(available, close, count: 0) - dynamic_smt_analysis(available, close, count: 0) - smc_d_analysis(available, close, count: 0) - xcall_analysis(available, close, count: 0) - net_hirq_analysis(available, close, count: 0) - numa_analysis(available, close, count: 0) - docker_coordination_burst_analysis(available, close, count: 0) - microarch_tidnocmp_analysis(available, close, count: 0) -libscenario_numa.so - scenario_numa(available, close, count: 12) -libsystem_tune.so - stealtask_tune(available, close, count: 0) - dynamic_smt_tune(available, close, count: 0) - smc_tune(available, close, count: 0) - xcall_tune(available, close, count: 0) - transparent_hugepage_tune(available, close, count: 0) - seep_tune(available, close, count: 0) - preload_tune(available, close, count: 0) - binary_tune(available, close, count: 0) - numa_sched_tune(available, close, count: 0) - net_hard_irq_tune(available, close, count: 0) - multi_net_path_tune(available, close, count: 0) -libdocker_tune.so - docker_cpu_burst(available, close, count: 0) - docker_burst(available, close, count: 0) - load_based_scheduling_tune(available, close, count: 0) -libpmu.so - pmu_counting_collector(available, close, count: 0) - pmu_sampling_collector(available, close, count: 12) - pmu_spe_collector(available, close, count: 12) - pmu_uncore_collector(available, close, count: 12) -libdocker_collector.so - docker_collector(available, close, count: 0) -libtune_numa.so - tune_numa_mem_access(available, close, count: 12) -libub_tune.so - unixbench_tune(available, close, count: 0) -libsystem_collector.so - thread_collector(available, close, count: 0) - kernel_config(available, close, count: 0) - command_collector(available, close, count: 0) - env_info_collector(available, close, count: 0) - net_interface_info(available, close, count: 0) ------------------------------------------------------------- -format: -[plugin] - [instance]([dependency status], [running status], [enable cnt]) -dependency status: available means satisfying dependency, otherwise unavailable. -running status: running means that instance is running, otherwise close. -enable cnt: number of instances enabled. -``` - -失败返回错误说明。 - -#### 查询调优实例信息 - -```shell -oeawarectl --info -``` - -显示调优实例描述信息及运行状态。 - -#### 查询运行实例订阅关系 - -```shell -oeawarectl -Q #查询所有运行实例的订阅关系图 -oeawarectl --query-dep= <插件实例> #查询运行实例订阅关系图 -``` - -在当前目录下生成dep.png,显示订阅关系。 - -实例未运行,不会显示订阅关系。 - -示例: - -```sh -oeawarectl -e thread_scenario -oeawarectl -Q -``` - -![img](./figures/dep.png) - -### 插件实例使能 - -#### 使能插件实例 - -```shell -oeawarectl -e | --enable <插件实例> -``` - -使能某个插件实例,会将其订阅的topic实例一起使能。 - -失败返回错误说明。 - -推荐使能插件列表: - -- libsystem_tune.so:stealtask_tune,smc_tune,xcall_tune,seep_tune。 -- libub_tune.so:unixbench_tune。 -- libtune_numa.so:tune_numa_mem_access。 - -其他插件主要用来提供数据,可通过sdk获取插件数据。 - -#### 关闭插件实例 - -```shell -oeawarectl -d | --disable <插件实例> -``` - -关闭某个插件实例,会将其订阅的topic实例一起关闭。 - -失败返回错误说明。 - -### 插件下载安装 - -通过`--list`命令查询支持下载的rpm包和已安装的插件。 - -```shell -oeawarectl --list -``` - -查询结果如下。 - -```shell -Supported Packages: #可下载的包 -[name1] #config中配置的plugin_list -[name2] -... -Installed Plugins: #已安装的插件 -[name1] -[name2] -... -``` - -通过`--install`命令下载安装rpm包。 - -```shell -oeawarectl -i | --install #指定--list下查询得到的包名称(Supported Packages下的包) -``` - -失败返回错误说明。 - -### 分析模式 - -```sh -oeawarectl analysis -h -usage: oeawarectl analysis [options]... - options - -t|--time set analysis duration in seconds(default 30s), range from 1 to 100. - -r|--realtime show real time report. - -v|--verbose show verbose information. - -h|--help show this help message. - --l1-miss-threshold set l1 tlbmiss threshold. - --l2-miss-threshold set l2 tlbmiss threshold. - --out-path set the path of the analysis report. - --dynamic-smt-threshold set dynamic smt cpu threshold. - --pid set the pid to be analyzed. - --numa-thread-threshold set numa sched thread creation threshold. - --smc-change-rate set smc connections change rate threshold. - --smc-localnet-flow set smc local net flow threshold. - --host-cpu-usage-threshold set host cpu usage threshold. - --docker-cpu-usage-threshold set docker cpu usage threshold. -``` - ---l1-miss-threshold用于设置l1-tlb—miss阈值,超过这个阈值miss率为high。 ---l1-miss-threshold用于设置l1-tlb-miss阈值,超过这个阈值miss率为high。(注意:选项名为l1-miss-threshold,但描述为tlb-miss,请确认为缓存 L1 cache miss 或 L1 TLB miss) - ---l2-miss-threshold用于设置l2-tlb—miss阈值,超过这个阈值miss率为high。 ---l2-miss-threshold用于设置l2-tlb-miss阈值,超过这个阈值miss率为high。(注意:选项名为l2-miss-threshold,但描述为tlb-miss,请确认为缓存 L2 cache miss 或 L2 TLB miss) - -示例: - -执行以下命令,输出系统分析报告。 - -```sh -oeawarectl analysis -t 10 -``` - -报告分为三部分: - -- Data Analysis:根据系统运行状态,给出系统性能数据分析。 -- Analysis Conclusion:给出系统分析结论。 -- Analysis Suggestion:给出具体调优方法。 - -### 帮助 - -通过`--help`查看帮助。 - -```shell -usage: oeawarectl [options]... - options - analysis run analysis mode. - -l|--load [plugin] load plugin. - -r|--remove [plugin] remove plugin from system. - -e|--enable [instance] enable the plugin instance. - -d|--disable [instance] disable the plugin instance. - -q query all plugins information. - --query [plugin] query the plugin information. - -Q query all instances dependencies. - --query-dep [instance] query the instance dependency. - --list the list of supported plugins. - --info the list of InfoCmd plugins. - -i|--install [plugin] install plugin from the list. - --reload-conf reload config file(now only support log level). - --help show this help message. -``` - -## 插件开发说明 - -### 基础数据结构 - -```c++ -typedef struct { - char *instanceName; // 实例名称 - char *topicName; // 主题名称 - char *params; // 参数 -} CTopic; - -typedef struct { - CTopic topic; - unsigned long long len; // data数组的长度 - void **data; // 存储的数据 -} DataList; - -const int OK = 0; -const int FAILED = -1; - -typedef struct { - int code; // 成功返回OK,失败返回FAILED - char *payload; // 附带信息 -} Result; - -``` - -### 实例基类 - -```c++ -namespace oeaware { -// Instance type. -const int TUNE = 0b10000; -const int SCENARIO = 0b01000; -const int RUN_ONCE = 0b00010; -class Interface { -public: - virtual Result OpenTopic(const Topic &topic) = 0; - virtual void CloseTopic(const Topic &topic) = 0; - virtual void UpdateData(const DataList &dataList) = 0; - virtual Result Enable(const std::string ¶m = "") = 0; - virtual void Disable() = 0; - virtual void Run() = 0; -protected: - std::string name; - std::string version; - std::string description; - std::vector supportTopics; - int priority; - int type; - int period; -} -} -``` - -实例开发继承实例基类,实现6个虚函数,并对类的7个属性赋值。 - -实例采用订阅发布模式,通过Subscribe获取数据,通过Publish接口发布数据。 - -### 属性说明 - -| 属性 | 类型 | 说明 | -| --- | --- | --- | -| name | string | 实例名称 | -| version | string | 实例版本(预留) | -| description | string | 实例描述 | -| supportTopics | vector\ | 支持的topic | -| priority | int | 实例执行的优先级(调优 > 感知 > 采集)| -| type | int | 实例类型,通过比特位标识,第二位表示单次执行实例,第三位表示采集实例,第四位表示感知实例,第5位表示调优实例| -| period | int | 实例执行周期,单位ms,period为10的倍数 | - -### 接口说明 - -| 函数名 | 参数 | 返回值 | 说明 | -| --- | --- | --- | --- | -|Result OpenTopic(const Topic &topic) | topic:打开的主题 | | 打开对应的topic | -| void CloseTopic(const Topic &topic) | topic:关闭的主题| |关闭对应的topic | -| void UpdateData(const DataList &dataList) | dataList:订阅的数据 | | 当订阅topic时,被订阅的topic每周期会通过UpdateData更新数据 | -| Result Enable(const std::string ¶m = "") | param:预留 | | 使能本实例 | -| void Disable() | | | 关闭本实例 | -| void Run() | | | 每周期会执行run函数 | - -### 实例示例 - -```C++ -#include -#include - -class Test : public oeaware::Interface { -public: - Test() { - name = "TestA"; - version = "1.0"; - description = "this is a test plugin"; - supportTopics; - priority = 0; - type = 0; - period = 20; - } - oeaware::Result OpenTopic(const oeaware::Topic &topic) override { - return oeaware::Result(OK); - } - void CloseTopic(const oeaware::Topic &topic) override { - - } - void UpdateData(const DataList &dataList) override { - for (int i = 0; i < dataList.len; ++i) { - ThreadInfo *info = static_cast(dataList.data[i]); - INFO(logger, "pid: " << info->pid << ", name: " << info->name); - } - } - oeaware::Result Enable(const std::string ¶m = "") override { - // 注意:Subscribe/Publish/SetDataListTopic 等函数并非Interface基类的一部分, - // 它们可能是由框架提供的全局函数或需要继承另一个基类。文档中应予以说明。 - Subscribe(oeaware::Topic{"thread_collector", "thread_collector", ""}); - return oeaware::Result(OK); - } - void Disable() override { - - } - void Run() override { - DataList dataList; - oeaware::SetDataListTopic(&dataList, "test", "test", ""); - dataList.len = 1; - dataList.data = new void* [1]; - dataList.data[0] = &pubData; - Publish(dataList); - } -private: - int pubData = 1; -}; - -extern "C" void GetInstance(std::vector> &interfaces) -{ - interfaces.emplace_back(std::make_shared()); -} -``` - -## 内部插件 - -### libpmu.so - -| 实例名称 | 架构 | 说明 | topic | -| --- | --- | --- | --- | -| pmu_counting_collector | aarch64 | 采集count相关事件 |cycles,net:netif_rx,L1-dcache-load-misses,L1-dcache-loads,L1-icache-load-misses,L1-icache-loads,branch-load-misses,branch-loads,dTLB-load-misses,dTLB-loads,iTLB-load-misses,iTLB-loads,cache-references,cache-misses,l2d_tlb_refill,l2d_cache_refill,l1d_tlb_refill,l1d_cache_refill,l1d_tlb,l1i_tlb,l1i_tlb_refill,l2d_tlb,l2i_tlb,l2i_tlb_refill,inst_retired,instructions,sched:sched_process_fork,sched:sched_process_exit | -| pmu_sampling_collector | aarch64 | 采集sample相关事件 | cycles,skb:skb_copy_datagram_iovec,net:napi_gro_receive_entry | -| pmu_spe_collector | aarch64 | 采集spe事件 | spe | -| pmu_uncore_collector | aarch64 | 采集uncore事件 | uncore | - -#### 限制条件 - -采集spe事件需要依赖硬件能力,此插件运行依赖 BIOS 的 SPE,运行前需要将 SPE 打开。 - -运行perf list | grep arm_spe查看是否已经开启SPE,如果开启,则有如下显示: - -```sh -arm_spe_0// [Kernel PMU event] -``` - -如果没有开启,则按下述步骤开启。 - -检查BIOS配置项 MISC Config --> SPE 的状态,如果状态为 Disable,则需要更改为 Enable。如果找不到这个选项,可能是BIOS版本过低。 - -进入系统`vim /boot/efi/EFI/openEuler/grub.cfg`,定位到内核版本对应的开机启动项,在末尾增加`kpti=off`。例如: - -```sh -linux /vmlinuz-4.19.90-2003.4.0.0036.oe1.aarch64 root=/dev/mapper/openeuler-root ro rd.lvm.lv=openeuler/root rd.lvm.lv=openeuler/swap video=VGA-1:640x480-32@60me rhgb quiet smmu.bypassdev=0x1000:0x17 smmu.bypassdev=0x1000:0x15 crashkernel=1024M,high video=efifb:off video=VGA-1:640x480-32@60me kpti=off -``` - -按**ESC**,输入“:wq”,按**Enter**保存并退出。执行reboot命令重启服务器。 - -### libsystem_collector.so - -系统信息采集插件。 - -| 实例名称 | 架构 | 说明 | topic | -| --- | --- | --- | --- | -| thread_collector | aarch64/x86 | 采集系统中的线程信息 | thread_collector | -| kernel_config | aarch64/x86| 采集内核相关参数,包括sysctl所有参数、lscpu、meminfo等 | get_kernel_config,get_cmd,set_kernel_config | -| command_collector | aarch64/x86 | 采集sysstat相关数据 | mpstat,iostat,vmstat,sar,pidstat | - -### libdocker_collector.so - -docker信息采集插件。 - -| 实例名称 | 架构 | 说明 | topic | -| --- | --- | --- | --- | -| docker_collector | aarch64/x86 | 采集docker相关信息 | docker_collector | - -### libthread_scenario.so - -线程感知插件。 - -| 实例名称 | 架构 | 说明 | 订阅 | -| --- | --- | --- | --- | -| thread_scenario | aarch64/x86 | 通过配置文件获取对应线程信息 | thread_collector::thread_collector | - -#### 配置文件 - -thread_scenario.conf - -```sh -redis -fstime -fsbuffer -fsdisk -``` - -### libanalysis_oeaware.so - -| 实例名称 | 架构 | 说明 | 订阅 | -| --- | --- | --- | --- | -| analysis_aware | 分析当前环境的业务特征,并给出优化建议 | aarch64 | pmu_spe_collector::spe, pmu_counting_collector::net:netif_rx, pmu_sampling_collector::cycles, pmu_sampling_collector::skb:skb_copy_datagram_iovec, pmu_sampling_collector::net:napi_gro_receive_entry | -| analysis_aware | aarch64 | 分析当前环境的业务特征,并给出优化建议 | pmu_spe_collector::spe, pmu_counting_collector::net:netif_rx, pmu_sampling_collector::cycles, pmu_sampling_collector::skb:skb_copy_datagram_iovec, pmu_sampling_collector::net:napi_gro_receive_entry | - -### libsystem_tune.so - -系统调优插件。 - -| 实例名称 | 架构 | 说明 | 订阅 | -| --- | --- | --- | --- | -| stealtask_tune | aarch64 | 高负载场景下,通过轻量级搜索算法,实现多核间快速负载均衡,最大化cpu资源利用率 | 无 | -| smc_tune | aarch64 | 使能smc加速,对使用tcp协议的连接无感加速 | 无 | -| xcall_tune | aarch64 | 通过减少系统调用底噪,提升系统性能 | thread_collector::thread_collector | -| seep_tune | aarch64 | 使能智能功耗模式,降低系统能耗 | 无 | -| transparent_hugepage_tune | aarch64/x86 | 开启透明大页,降低tlbmiss | 无 | -| preload_tune | aarch64 | 无感加载动态库 | 无 | -| binary_tune | aarch64 | 将容器中运行的特殊二进制文件绑定到物理核心,通过解析ELF文件中的特殊段识别需要调优的程序,并根据配置进行CPU亲和性绑定,提升程序性能 | env_info::static, env_info::realtime, thread_collector::thread_collector, docker_collector::docker_collector | -| cluster_tune | aarch64 | 启用CPU cluster调度来优化性能 | 无 | -| dynamic_smt_tune | aarch64 | 低负载场景优先分配物理核,减少超线程的核间干扰 | 无 | -| numa_sched_tune | aarch64 | 针对有numa瓶颈的场景,让线程在整个生命周期尽可能在同numa内调度 | 无 | -| hardirq_tune | aarch64 | 将网卡队列对应的中断尽量和使用该中断的业务绑定在相同numa上,减少跨numa访问 | 无 | -| multi_net_path | aarch64 | 网卡多路径调优,每个中断只处理所在numa上的业务 | 无 | - -#### 配置文件 - -##### xcall.yaml - -``` yaml -redis: # 线程名称 - - xcall_1: 1 #xcall_1表示xcall优化方式,目前只有xcall_1; 1表示需要优化系统调用号 -mysql: - - xcall_1: 1 -node: - - xcall_1: 1 -``` - -**限制说明**:xcall_tune依赖内核特性,需要开启FAST_SYSCALL编译内核,并且在cmdline里增加xcall字段。 - -##### preload.yaml - -路径:`/etc/oeAware/preload.yaml` - -```yaml -- appname: "" - so: "" -``` - -通过执行`oeawarectl -e preload_tune`命令,根据配置文件给对应进程加载so。 - -### libub_tune.so - -unixbench调优插件。 - -| 实例名称 | 架构 | 说明 | 订阅 | -| --- | --- | --- | --- | -| unixbench_tune | aarch64/x86 | 通过减少远端内存访问,优化ub性能 | thread_collector::thread_collector | - -### libdocker_tune.so - -| 实例名称 | 架构 | 说明 | 订阅 | -| --- | --- | --- | --- | -| docker_cpu_burst | aarch64 | 在出现突发负载时,CPUBurst可以为容器临时提供额外的CPU资源,缓解CPU限制带来的性能瓶颈 | pmu_counting_collector::cycles,docker_collector::docker_collector | -| docker_coordination_burst_tune | aarch64 | 感知多容器的CPU配额,划分空闲CPU算力给算力不足的容器 | 无 | -| load_based_scheduling_tune | aarch64 | 针对超过负载超过阈值的容器,自动使能潮汐调度,使资源在容器间更均匀 | docker_collector::docker_collector, env_info_collector::static, pmu_sampling_collector::cycles | -| docker_cluster_affinity | aarch64 | 在系统存在cluster架构是,容器感知cluster架构进行调度,并感知多容器间CPU负载,在容器与容器之间进行调整quota资源(针对多容器资源负载不均衡场景) | l3c_hit, docker_collector::docker_collector | - -## 外部插件 - -外部插件需要通过以下命令安装,例如安装numafast相关插件。 - -```sh -oeawarectl -i numafast -``` - -### libscenario_numa.so - -| 实例名称 | 架构 | 说明 | 订阅 | topic | -| --- | --- | --- | --- | --- | -| scenario_numa | aarch64 | 感知当前环境跨NUMA访存比例,用于实例或sdk订阅(无法单独使能) | pmu_uncore_collector::uncore | system_score | - -### libtune_numa.so - -| 实例名称 | 架构 | 说明 | 订阅 | -| --- | --- | --- | --- | -| tune_numa_mem_access | aarch64 | 周期性迁移线程和内存,减少跨NUMA内存访问 | scenario_numa::system_score, pmu_spe_collector::spe, pmu_counting_collector::cycles | - -#### tune_numa_mem_access使用说明 - -tune_numa_mem_access可以通过 `--help`命令查看所有的参数及其作用 - -```shell -[root@localhost ~]# oeawarectl -e tune_numa_mem_access -cmd "--help cmd" -Instance enabled failed, because Invalid parameter: --help cmd, please check. -/etc/numafast.yaml parse success. opt not found -Usage: oeaware -e tune_numa_mem_access --cmd "[options][]" - or vim /etc/numafast.yaml and set options - attr:c => support conf by cmdline, y => support conf by yaml, r => support reload yaml online -Options: - -i, --sampling-interval attr:cy, every sampling interval n msec, range is [100, 100000], default is 100 - -t, --sampling-times attr:cy, every optimizing have n times sampling, range is [1, 1000] default is 10 - -m, --tune-mode attr:cy, tune mode, mode can be [b, t, p], default is b - b: migrate page and thread - t: migrate thread only - p: migrate page only - -w, --load-way attr:cy, load way, can be [b, c], default is b - b: balance the load of threads on all numa nodes - c: centralize processes to fewer numas based on load - --smt attr:cy, smt mode, can be [off, phy-first, load-first], default is phy-first - off: disable smt - phy-first: migrate threads to physical cores first, may limit load - load-first: migrate threads to physical cores based on load, limit load - -h, --help attr:c, show help info, type can be [cmd, yaml], default is cmd - -v, --version attr:c, show version info - -W, --whitelist - attr:cy, only migrate process in the list, regexp list split by comma, if not set, migrate all process. - -b, --blacklist - attr:cy, do not migrate process in the list, regexp list split by comma, priority higher than whitelist. - --precise-load attr:cy, load control precisely - --mem-numa-aggregation attr:cy, process memory aggregate by numa - other options refer to /etc/numafast.yaml - -[root@localhost format]# oeawarectl -e tune_numa_mem_access -cmd "--help yaml" -Instance enabled failed, because show help message: -Usage: vim /etc/numafast.yaml and set options -sampling-interval: # every sampling interval n msec, range is [100, 100000], default is 100 -sampling-times: # every optimizing have n times sampling, range is [1, 1000] default is 10 -tune-mode: # tune mode, mode can be [b, t, p], default is b - # b: migrate page and thread - # t: migrate thread only - # p: migrate page only -load-way: # load way, can be [b, c], default is b - # b: balance the load of threads on all numa nodes - # c: centralize processes to fewer numas based on load -smt: # smt mode, can be [off, phy-first, load-first], default is phy-first - # off: disable smt - # phy-first: migrate threads to physical cores first, may limit load - # load-first: migrate threads to physical cores based on load, limit load -whitelist: [] # only migrate process in the list, regexp list split by comma, if not set, migrate all process. -group: # process affinity group - # - [process1, process2, ...] -min-numa-score: # min numa score, range is [0 ,1000], default is 955 -max-numa-score: # max numa score, range is [0, 1000], default is 975 -min-rx-ops-per-ms: # min rx ops per ms, default is 10000 -numa-ratio: [] # process initial load distribution for each node -page-reserve: # page reserve, range is [0, 4294967295], default is 100000 -precise-load: # load control precisely -mem-numa-aggregation: # process memory aggregate by numa -process: # process config - # - name: process1 # process name, /proc/pid/comm - # params-regex: "" # process params regex, /proc/pid/cmdline - # algorithm: "" # process algorithm, support [MigrateThreadsToOneNode, BalanceProcNum] - # migrate-all-memory: "" # migrate all memory, support [true, false] - # default-mig-mem-node: "" # default migrate memory node, support [0, numa_node_num - 1] - # net-affinity: "" # process net affinity, set net interface name -``` - -## SDK使用说明 - -```C -typedef int(*Callback)(const DataList *); -int OeInit(); // 初始化资源,与server建立链接 -int OeSubscribe(const CTopic *topic, Callback callback); // 订阅topic,异步执行callback -int OeUnsubscribe(const CTopic *topic); // 取消订阅topic -int OePublish(const DataList *dataList); // 发布数据到server -void OeClose(); // 释放资源 -``` - -**示例** - -```C -#include "oe_client.h" -#include "command_data.h" -int f(const DataList *dataList) -{ - int i = 0; - for (; i < dataList->len; i++) { - CommandData *data = (CommandData*)dataList->data[i]; - for (int j = 0; j < data->attrLen; ++j) { - printf("%s ", data->itemAttr[j]); - } - printf("\n"); - } - return 0; -} -int main() { - OeInit(); - CTopic topic = { - "command_collector", - "sar", - "-q 1", - }; - if (OeSubscribe(&topic, f) < 0) { - printf("failed\n"); - } else { - printf("success\n"); - } - sleep(10); - OeClose(); -} -``` - -## 约束限制 - -### 功能约束 - -oeAware默认集成了arm的微架构采集libkperf模块,该模块同一时间只能有一个进程进行调用,如其他进程调用或者使用perf命令可能存在冲突。 - -### 操作约束 - -当前oeAware仅支持root组用户进行操作,sdk支持root组和oeaware组用户使用。 - -## 注意事项 - -oeAware的配置文件和插件用户组和权限有严格校验,不要对oeAware的相关文件进行权限和用户组进行修改。 - -权限说明: - -- 插件文件:440 - -- 客户端执行文件:750 - -- 服务端执行文件:750 - -- 服务配置文件:640 -- Gitee From f6f1233d5ccbdd039bc6abbc4bd811034905ef4e Mon Sep 17 00:00:00 2001 From: Evawudonger Date: Sun, 28 Sep 2025 17:06:41 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9performance=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E7=9A=84=E5=AD=98=E5=82=A8=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _redirect.yaml | 22 +++++++++++++ docs/en/server/_toc.yaml | 12 ++++--- docs/en/server/performance/atune/_toc.yaml | 14 ++++++++ .../atune/appendix.md | 0 .../atune/figures/picture1.png | Bin .../atune/figures/picture4.png | Bin .../atune/figures/zh-cn_image_0213178479.png | Bin .../atune/figures/zh-cn_image_0213178480.png | Bin .../atune/figures/zh-cn_image_0214540398.png | Bin .../atune/figures/zh-cn_image_0227497000.png | Bin .../atune/figures/zh-cn_image_0227497343.png | Bin .../atune/figures/zh-cn_image_0231122163.png | Bin .../atune/figures/zh-cn_image_0245342444.png | Bin .../atune/getting_to_know_a_tune.md | 0 .../atune/installation_and_deployment.md | 4 +-- .../atune/native_turbo.md | 0 .../public_sys-resources/icon-caution.gif | Bin .../public_sys-resources/icon-danger.gif | Bin .../public_sys-resources}/icon-note.gif | Bin .../public_sys-resources/icon-notice.gif | Bin .../atune/public_sys-resources/icon-tip.gif | Bin .../public_sys-resources/icon-warning.gif | Bin .../atune/usage_instructions.md | 0 .../cpu_optimization/sysboost/sysboost.md | 5 --- .../{cpu_optimization => }/kae/_toc.yaml | 0 .../kae/figures/en-us_image_0229622729.png | Bin .../kae/figures/en-us_image_0229622789.png | Bin .../kae/figures/en-us_image_0230050789.png | Bin .../kae/figures/en-us_image_0231143189.png | Bin .../kae/figures/en-us_image_0231143191.png | Bin .../kae/figures/en-us_image_0231143193.png | Bin .../kae/figures/en-us_image_0231143195.png | Bin .../kae/figures/en-us_image_0231143196.png | Bin .../kae/figures/en-us_image_0231143197.png | Bin .../kae/figures/en-us_image_0231143198.png | Bin .../kae/figures/en-us_image_0231563132.png | Bin .../kae/figures/en-us_image_0231563134.png | Bin .../kae/figures/en-us_image_0231563135.png | Bin .../kae/figures/en-us_image_0231563136.png | Bin .../kae/using_the_kae.md | 0 .../{cpu_optimization => }/sysboost/_toc.yaml | 15 ++++----- .../sysboost/figures/architecture.png | Bin .../figures}/icon-note.gif | Bin .../sysboost/getting_to_know_sysboost.md | 0 .../sysboost/installation_and_deployment.md | 0 .../sysboost/usage_instructions.md | 0 .../system_optimization/atune/_toc.yaml | 17 ---------- .../system_optimization/atune/a_tune.md | 5 --- .../{overall => }/system_resource/_toc.yaml | 0 ...cb9df64f4659787c810167c89feb4_1884x257.png | Bin .../images/zh-cn_image_0000001321685172.png | Bin .../images/zh-cn_image_0000001322112990.png | Bin .../images/zh-cn_image_0000001322219840.png | Bin .../images/zh-cn_image_0000001322372918.png | Bin .../images/zh-cn_image_0000001322379488.png | Bin .../images/zh-cn_image_0000001335457246.png | Bin .../images/zh-cn_image_0000001335816300.png | Bin .../images/zh-cn_image_0000001336448570.png | Bin .../images/zh-cn_image_0000001336729664.png | Bin .../images/zh-cn_image_0000001337000118.png | Bin .../images/zh-cn_image_0000001337039920.png | Bin .../images/zh-cn_image_0000001337051916.jpg | Bin .../images/zh-cn_image_0000001337053248.png | Bin .../images/zh-cn_image_0000001337172594.png | Bin .../images/zh-cn_image_0000001337212144.jpg | Bin .../images/zh-cn_image_0000001337260780.png | Bin .../images/zh-cn_image_0000001337268560.png | Bin .../images/zh-cn_image_0000001337268820.png | Bin .../images/zh-cn_image_0000001337419960.png | Bin .../images/zh-cn_image_0000001337420372.png | Bin .../images/zh-cn_image_0000001337422904.png | Bin .../images/zh-cn_image_0000001337424024.png | Bin .../images/zh-cn_image_0000001337424304.png | Bin .../images/zh-cn_image_0000001337427216.png | Bin .../images/zh-cn_image_0000001337427392.png | Bin .../images/zh-cn_image_0000001337533690.png | Bin .../images/zh-cn_image_0000001337536842.png | Bin .../images/zh-cn_image_0000001337579708.png | Bin .../images/zh-cn_image_0000001337580216.png | Bin .../images/zh-cn_image_0000001337584296.png | Bin .../images/zh-cn_image_0000001337696078.png | Bin .../images/zh-cn_image_0000001337740252.png | Bin .../images/zh-cn_image_0000001337740540.png | Bin .../images/zh-cn_image_0000001337747132.png | Bin .../images/zh-cn_image_0000001337748300.png | Bin .../images/zh-cn_image_0000001337748528.png | Bin .../images/zh-cn_image_0000001372249333.png | Bin .../images/zh-cn_image_0000001372748125.png | Bin .../images/zh-cn_image_0000001372821865.png | Bin .../images/zh-cn_image_0000001372824637.png | Bin .../images/zh-cn_image_0000001373373585.png | Bin .../images/zh-cn_image_0000001373379529.png | Bin .../images/zh-cn_image_0000001384808269.png | Bin .../images/zh-cn_image_0000001385585749.png | Bin .../images/zh-cn_image_0000001385611905.png | Bin .../images/zh-cn_image_0000001385905845.png | Bin .../images/zh-cn_image_0000001386149037.png | Bin .../images/zh-cn_image_0000001386699925.png | Bin .../images/zh-cn_image_0000001387293085.png | Bin .../images/zh-cn_image_0000001387413509.png | Bin .../images/zh-cn_image_0000001387413793.png | Bin .../images/zh-cn_image_0000001387415629.png | Bin .../images/zh-cn_image_0000001387691985.png | Bin .../images/zh-cn_image_0000001387692269.jpg | Bin .../images/zh-cn_image_0000001387692893.png | Bin .../images/zh-cn_image_0000001387755969.png | Bin .../images/zh-cn_image_0000001387780357.png | Bin .../images/zh-cn_image_0000001387784693.png | Bin .../images/zh-cn_image_0000001387787605.png | Bin .../images/zh-cn_image_0000001387855149.png | Bin .../images/zh-cn_image_0000001387857005.png | Bin .../images/zh-cn_image_0000001387902849.png | Bin .../images/zh-cn_image_0000001387907229.png | Bin .../images/zh-cn_image_0000001387908045.png | Bin .../images/zh-cn_image_0000001387908453.png | Bin .../images/zh-cn_image_0000001387961737.png | Bin .../images/zh-cn_image_0000001388020197.png | Bin .../images/zh-cn_image_0000001388024321.png | Bin .../images/zh-cn_image_0000001388024397.png | Bin .../images/zh-cn_image_0000001388028161.png | Bin .../images/zh-cn_image_0000001388028537.png | Bin .../images/zh-cn_image_0000001388184025.png | Bin .../images/zh-cn_image_0000001388187249.png | Bin .../images/zh-cn_image_0000001388187325.png | Bin .../images/zh-cn_image_0000001388188365.png | Bin .../images/zh-cn_image_0000001388241577.png | Bin .../images/zh-cn_image_0000001388972645.png | Bin .../images/zh-cn_image_0000001389098425.png | Bin .../images/zh-cn_other_0000001337581224.jpeg | Bin .../system_resources_and_performance.md | 0 docs/zh/server/_toc.yaml | 12 ++++--- .../{system_optimization => }/atune/_toc.yaml | 0 .../atune/appendix.md | 0 .../atune/figures/picture1.png | Bin .../atune/figures/picture4.png | Bin .../atune/figures/zh-cn_image_0213178479.png | Bin .../atune/figures/zh-cn_image_0213178480.png | Bin .../atune/figures/zh-cn_image_0214540398.png | Bin .../atune/figures/zh-cn_image_0227497000.png | Bin .../atune/figures/zh-cn_image_0227497343.png | Bin .../atune/figures/zh-cn_image_0231122163.png | Bin .../atune/figures/zh-cn_image_0245342444.png | Bin .../atune/getting_to_know_a_tune.md | 2 +- .../atune/installation_and_deployment.md | 4 +-- .../atune/native_turbo.md | 0 .../public_sys-resources/icon-caution.gif | Bin .../public_sys-resources/icon-danger.gif | Bin .../public_sys-resources/icon-note.gif | Bin .../public_sys-resources/icon-notice.gif | Bin .../public_sys-resources/icon-tip.gif | Bin .../public_sys-resources/icon-warning.gif | Bin .../atune/usage_instructions.md | 0 .../{cpu_optimization => }/kae/_toc.yaml | 0 .../kae/figures/1665628542704.png | Bin .../kae/figures/AT_CHECK_Process.png | Bin ...D1376B2A-D036-41C4-B852-E8368F363B5E-1.png | Bin .../D1376B2A-D036-41C4-B852-E8368F363B5E.png | Bin .../kae/figures/PostgreSql_architecture.png | Bin .../figures/Process_Of_EXECVAT_ATCHECK.png | Bin .../kae/figures/RA-arch-1.png | Bin .../kae/figures/RA-arch-2.png | Bin .../kae/figures/TPCM.png | Bin .../kae/figures/creat_datadisk.png | Bin .../kae/figures/creat_datadisk1.png | Bin .../kae/figures/dim_architecture.jpg | Bin .../kae/figures/etmem-system-architecture.png | Bin .../kae/figures/ima_digest_list_update.png | Bin .../kae/figures/ima_performance.gif | Bin .../kae/figures/ima_verification.png | Bin .../figures/logical_architectureofMariaDB.png | Bin .../kae/figures/login.png | Bin .../kae/figures/nginx_deployed_success.png | Bin .../kae/figures/nginx_start_failed.png | Bin .../kae/figures/nginx_start_success.png | Bin .../kae/figures/postgres.png | Bin .../kae/figures/root_of_trust_framework.png | Bin .../kae/figures/top_display.png | Bin .../kae/figures/trusted_chain.png | Bin .../kae/figures/zh-cn_image_0229622729.png | Bin .../kae/figures/zh-cn_image_0229622789.png | Bin .../kae/figures/zh-cn_image_0230050789.png | Bin .../kae/figures/zh-cn_image_0231143176.png | Bin .../kae/figures/zh-cn_image_0231143177.png | Bin .../kae/figures/zh-cn_image_0231143178.png | Bin .../kae/figures/zh-cn_image_0231143180.png | Bin .../kae/figures/zh-cn_image_0231143181.png | Bin .../kae/figures/zh-cn_image_0231143183.png | Bin .../kae/figures/zh-cn_image_0231143185.png | Bin .../kae/figures/zh-cn_image_0231143187.png | Bin .../kae/figures/zh-cn_image_0231143189.png | Bin .../kae/figures/zh-cn_image_0231143191.png | Bin .../kae/figures/zh-cn_image_0231143193.png | Bin .../kae/figures/zh-cn_image_0231143195.png | Bin .../kae/figures/zh-cn_image_0231143196.png | Bin .../kae/figures/zh-cn_image_0231143197.png | Bin .../kae/figures/zh-cn_image_0231143198.png | Bin .../kae/figures/zh-cn_image_0231563132.png | Bin .../kae/figures/zh-cn_image_0231563134.png | Bin .../kae/figures/zh-cn_image_0231563135.png | Bin .../kae/figures/zh-cn_image_0231563136.png | Bin .../public_sys-resources/icon-caution.gif | Bin .../public_sys-resources/icon-danger.gif | Bin .../public_sys-resources}/icon-note.gif | Bin .../public_sys-resources/icon-notice.gif | Bin .../public_sys-resources/icon-tip.gif | Bin .../public_sys-resources/icon-warning.gif | Bin .../kae/using_the_kae.md | 0 .../{cpu_optimization => }/sysboost/_toc.yaml | 0 .../figures}/icon-note.gif | Bin .../figures/\346\236\266\346\236\204.png" | Bin .../sysboost/getting_to_know_sysboost.md | 0 .../sysboost/installation_and_deployment.md | 12 +++---- .../sysboost/usage_instructions.md | 30 ++++++++---------- .../{overall => }/system_resource/_toc.yaml | 0 ...cb9df64f4659787c810167c89feb4_1884x257.png | Bin .../images/zh-cn_image_0000001321685172.png | Bin .../images/zh-cn_image_0000001322112990.png | Bin .../images/zh-cn_image_0000001322219840.png | Bin .../images/zh-cn_image_0000001322372918.png | Bin .../images/zh-cn_image_0000001322379488.png | Bin .../images/zh-cn_image_0000001335457246.png | Bin .../images/zh-cn_image_0000001335816300.png | Bin .../images/zh-cn_image_0000001336448570.png | Bin .../images/zh-cn_image_0000001336729664.png | Bin .../images/zh-cn_image_0000001337000118.png | Bin .../images/zh-cn_image_0000001337039920.png | Bin .../images/zh-cn_image_0000001337051916.jpg | Bin .../images/zh-cn_image_0000001337053248.png | Bin .../images/zh-cn_image_0000001337172594.png | Bin .../images/zh-cn_image_0000001337212144.jpg | Bin .../images/zh-cn_image_0000001337260780.png | Bin .../images/zh-cn_image_0000001337268560.png | Bin .../images/zh-cn_image_0000001337268820.png | Bin .../images/zh-cn_image_0000001337419960.png | Bin .../images/zh-cn_image_0000001337420372.png | Bin .../images/zh-cn_image_0000001337422904.png | Bin .../images/zh-cn_image_0000001337424024.png | Bin .../images/zh-cn_image_0000001337424304.png | Bin .../images/zh-cn_image_0000001337427216.png | Bin .../images/zh-cn_image_0000001337427392.png | Bin .../images/zh-cn_image_0000001337533690.png | Bin .../images/zh-cn_image_0000001337536842.png | Bin .../images/zh-cn_image_0000001337579708.png | Bin .../images/zh-cn_image_0000001337580216.png | Bin .../images/zh-cn_image_0000001337584296.png | Bin .../images/zh-cn_image_0000001337696078.png | Bin .../images/zh-cn_image_0000001337740252.png | Bin .../images/zh-cn_image_0000001337740540.png | Bin .../images/zh-cn_image_0000001337747132.png | Bin .../images/zh-cn_image_0000001337748300.png | Bin .../images/zh-cn_image_0000001337748528.png | Bin .../images/zh-cn_image_0000001372249333.png | Bin .../images/zh-cn_image_0000001372748125.png | Bin .../images/zh-cn_image_0000001372821865.png | Bin .../images/zh-cn_image_0000001372824637.png | Bin .../images/zh-cn_image_0000001373373585.png | Bin .../images/zh-cn_image_0000001373379529.png | Bin .../images/zh-cn_image_0000001384808269.png | Bin .../images/zh-cn_image_0000001385585749.png | Bin .../images/zh-cn_image_0000001385611905.png | Bin .../images/zh-cn_image_0000001385905845.png | Bin .../images/zh-cn_image_0000001386149037.png | Bin .../images/zh-cn_image_0000001386699925.png | Bin .../images/zh-cn_image_0000001387293085.png | Bin .../images/zh-cn_image_0000001387413509.png | Bin .../images/zh-cn_image_0000001387413793.png | Bin .../images/zh-cn_image_0000001387415629.png | Bin .../images/zh-cn_image_0000001387691985.png | Bin .../images/zh-cn_image_0000001387692269.jpg | Bin .../images/zh-cn_image_0000001387692893.png | Bin .../images/zh-cn_image_0000001387755969.png | Bin .../images/zh-cn_image_0000001387780357.png | Bin .../images/zh-cn_image_0000001387784693.png | Bin .../images/zh-cn_image_0000001387787605.png | Bin .../images/zh-cn_image_0000001387855149.png | Bin .../images/zh-cn_image_0000001387857005.png | Bin .../images/zh-cn_image_0000001387902849.png | Bin .../images/zh-cn_image_0000001387907229.png | Bin .../images/zh-cn_image_0000001387908045.png | Bin .../images/zh-cn_image_0000001387908453.png | Bin .../images/zh-cn_image_0000001387961737.png | Bin .../images/zh-cn_image_0000001388020197.png | Bin .../images/zh-cn_image_0000001388024321.png | Bin .../images/zh-cn_image_0000001388024397.png | Bin .../images/zh-cn_image_0000001388028161.png | Bin .../images/zh-cn_image_0000001388028537.png | Bin .../images/zh-cn_image_0000001388184025.png | Bin .../images/zh-cn_image_0000001388187249.png | Bin .../images/zh-cn_image_0000001388187325.png | Bin .../images/zh-cn_image_0000001388188365.png | Bin .../images/zh-cn_image_0000001388241577.png | Bin .../images/zh-cn_image_0000001388972645.png | Bin .../images/zh-cn_image_0000001389098425.png | Bin .../images/zh-cn_other_0000001337581224.jpeg | Bin .../system_resources_and_performance.md | 1 + 295 files changed, 82 insertions(+), 73 deletions(-) create mode 100644 docs/en/server/performance/atune/_toc.yaml rename docs/en/server/performance/{system_optimization => }/atune/appendix.md (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/picture1.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/picture4.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0213178479.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0213178480.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0214540398.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0227497000.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0227497343.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0231122163.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0245342444.png (100%) rename docs/en/server/performance/{system_optimization => }/atune/getting_to_know_a_tune.md (100%) rename docs/en/server/performance/{system_optimization => }/atune/installation_and_deployment.md (98%) rename docs/en/server/performance/{system_optimization => }/atune/native_turbo.md (100%) rename docs/en/server/performance/{system_optimization => }/atune/public_sys-resources/icon-caution.gif (100%) rename docs/en/server/performance/{system_optimization => }/atune/public_sys-resources/icon-danger.gif (100%) rename docs/en/server/performance/{cpu_optimization/sysboost/figures => atune/public_sys-resources}/icon-note.gif (100%) rename docs/en/server/performance/{system_optimization => }/atune/public_sys-resources/icon-notice.gif (100%) rename docs/en/server/performance/{system_optimization => }/atune/public_sys-resources/icon-tip.gif (100%) rename docs/en/server/performance/{system_optimization => }/atune/public_sys-resources/icon-warning.gif (100%) rename docs/en/server/performance/{system_optimization => }/atune/usage_instructions.md (100%) delete mode 100644 docs/en/server/performance/cpu_optimization/sysboost/sysboost.md rename docs/en/server/performance/{cpu_optimization => }/kae/_toc.yaml (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0229622729.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0229622789.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0230050789.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231143189.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231143191.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231143193.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231143195.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231143196.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231143197.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231143198.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231563132.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231563134.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231563135.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/figures/en-us_image_0231563136.png (100%) rename docs/en/server/performance/{cpu_optimization => }/kae/using_the_kae.md (100%) rename docs/en/server/performance/{cpu_optimization => }/sysboost/_toc.yaml (36%) rename docs/en/server/performance/{cpu_optimization => }/sysboost/figures/architecture.png (100%) rename docs/en/server/performance/{system_optimization/atune/public_sys-resources => sysboost/figures}/icon-note.gif (100%) rename docs/en/server/performance/{cpu_optimization => }/sysboost/getting_to_know_sysboost.md (100%) rename docs/en/server/performance/{cpu_optimization => }/sysboost/installation_and_deployment.md (100%) rename docs/en/server/performance/{cpu_optimization => }/sysboost/usage_instructions.md (100%) delete mode 100644 docs/en/server/performance/system_optimization/atune/_toc.yaml delete mode 100644 docs/en/server/performance/system_optimization/atune/a_tune.md rename docs/en/server/performance/{overall => }/system_resource/_toc.yaml (100%) rename docs/en/server/performance/{overall => }/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001321685172.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322112990.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322219840.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322372918.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322379488.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001335457246.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001335816300.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001336448570.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001336729664.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337000118.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337039920.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337051916.jpg (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337053248.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337172594.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337212144.jpg (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337260780.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337268560.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337268820.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337419960.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337420372.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337422904.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337424024.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337424304.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337427216.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337427392.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337533690.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337536842.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337579708.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337580216.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337584296.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337696078.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337740252.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337740540.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337747132.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337748300.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337748528.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372249333.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372748125.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372821865.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372824637.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001373373585.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001373379529.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001384808269.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001385585749.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001385611905.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001385905845.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001386149037.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001386699925.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387293085.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387413509.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387413793.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387415629.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387691985.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387692269.jpg (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387692893.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387755969.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387780357.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387784693.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387787605.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387855149.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387857005.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387902849.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387907229.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387908045.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387908453.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387961737.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388020197.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388024321.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388024397.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388028161.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388028537.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388184025.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388187249.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388187325.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388188365.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388241577.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388972645.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001389098425.png (100%) rename docs/en/server/performance/{overall => }/system_resource/images/zh-cn_other_0000001337581224.jpeg (100%) rename docs/en/server/performance/{overall => }/system_resource/system_resources_and_performance.md (100%) rename docs/zh/server/performance/{system_optimization => }/atune/_toc.yaml (100%) rename docs/zh/server/performance/{system_optimization => }/atune/appendix.md (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/picture1.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/picture4.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0213178479.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0213178480.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0214540398.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0227497000.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0227497343.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0231122163.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/figures/zh-cn_image_0245342444.png (100%) rename docs/zh/server/performance/{system_optimization => }/atune/getting_to_know_a_tune.md (99%) rename docs/zh/server/performance/{system_optimization => }/atune/installation_and_deployment.md (98%) rename docs/zh/server/performance/{system_optimization => }/atune/native_turbo.md (100%) rename docs/zh/server/performance/{cpu_optimization/kae => atune}/public_sys-resources/icon-caution.gif (100%) rename docs/zh/server/performance/{cpu_optimization/kae => atune}/public_sys-resources/icon-danger.gif (100%) rename docs/zh/server/performance/{cpu_optimization/kae => atune}/public_sys-resources/icon-note.gif (100%) rename docs/zh/server/performance/{cpu_optimization/kae => atune}/public_sys-resources/icon-notice.gif (100%) rename docs/zh/server/performance/{cpu_optimization/kae => atune}/public_sys-resources/icon-tip.gif (100%) rename docs/zh/server/performance/{cpu_optimization/kae => atune}/public_sys-resources/icon-warning.gif (100%) rename docs/zh/server/performance/{system_optimization => }/atune/usage_instructions.md (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/_toc.yaml (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/1665628542704.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/AT_CHECK_Process.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/PostgreSql_architecture.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/Process_Of_EXECVAT_ATCHECK.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/RA-arch-1.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/RA-arch-2.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/TPCM.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/creat_datadisk.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/creat_datadisk1.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/dim_architecture.jpg (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/etmem-system-architecture.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/ima_digest_list_update.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/ima_performance.gif (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/ima_verification.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/logical_architectureofMariaDB.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/login.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/nginx_deployed_success.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/nginx_start_failed.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/nginx_start_success.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/postgres.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/root_of_trust_framework.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/top_display.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/trusted_chain.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0229622729.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0229622789.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0230050789.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143176.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143177.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143178.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143180.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143181.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143183.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143185.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143187.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143189.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143191.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143193.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143195.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143196.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143197.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231143198.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231563132.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231563134.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231563135.png (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/figures/zh-cn_image_0231563136.png (100%) rename docs/zh/server/performance/{system_optimization/atune => kae}/public_sys-resources/icon-caution.gif (100%) rename docs/zh/server/performance/{system_optimization/atune => kae}/public_sys-resources/icon-danger.gif (100%) rename docs/zh/server/performance/{cpu_optimization/sysboost/figures => kae/public_sys-resources}/icon-note.gif (100%) rename docs/zh/server/performance/{system_optimization/atune => kae}/public_sys-resources/icon-notice.gif (100%) rename docs/zh/server/performance/{system_optimization/atune => kae}/public_sys-resources/icon-tip.gif (100%) rename docs/zh/server/performance/{system_optimization/atune => kae}/public_sys-resources/icon-warning.gif (100%) rename docs/zh/server/performance/{cpu_optimization => }/kae/using_the_kae.md (100%) rename docs/zh/server/performance/{cpu_optimization => }/sysboost/_toc.yaml (100%) rename docs/zh/server/performance/{system_optimization/atune/public_sys-resources => sysboost/figures}/icon-note.gif (100%) rename "docs/zh/server/performance/cpu_optimization/sysboost/figures/\346\236\266\346\236\204.png" => "docs/zh/server/performance/sysboost/figures/\346\236\266\346\236\204.png" (100%) rename docs/zh/server/performance/{cpu_optimization => }/sysboost/getting_to_know_sysboost.md (100%) rename docs/zh/server/performance/{cpu_optimization => }/sysboost/installation_and_deployment.md (93%) rename docs/zh/server/performance/{cpu_optimization => }/sysboost/usage_instructions.md (91%) rename docs/zh/server/performance/{overall => }/system_resource/_toc.yaml (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001321685172.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322112990.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322219840.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322372918.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001322379488.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001335457246.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001335816300.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001336448570.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001336729664.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337000118.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337039920.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337051916.jpg (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337053248.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337172594.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337212144.jpg (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337260780.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337268560.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337268820.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337419960.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337420372.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337422904.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337424024.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337424304.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337427216.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337427392.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337533690.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337536842.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337579708.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337580216.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337584296.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337696078.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337740252.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337740540.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337747132.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337748300.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001337748528.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372249333.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372748125.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372821865.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001372824637.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001373373585.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001373379529.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001384808269.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001385585749.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001385611905.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001385905845.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001386149037.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001386699925.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387293085.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387413509.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387413793.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387415629.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387691985.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387692269.jpg (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387692893.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387755969.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387780357.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387784693.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387787605.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387855149.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387857005.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387902849.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387907229.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387908045.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387908453.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001387961737.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388020197.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388024321.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388024397.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388028161.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388028537.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388184025.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388187249.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388187325.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388188365.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388241577.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001388972645.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_image_0000001389098425.png (100%) rename docs/zh/server/performance/{overall => }/system_resource/images/zh-cn_other_0000001337581224.jpeg (100%) rename docs/zh/server/performance/{overall => }/system_resource/system_resources_and_performance.md (99%) diff --git a/_redirect.yaml b/_redirect.yaml index 78cea2d4..db3be63c 100644 --- a/_redirect.yaml +++ b/_redirect.yaml @@ -345,16 +345,27 @@ /docs/zh/docs/Administration/配置网络.md: /docs/zh/server/network/network_config/network_configuration.md /docs/zh/docs/Gazelle/Gazelle.md: /docs/zh/server/network/gazelle/gazelle_user_guide.md /docs/zh/docs/ops_guide/系统资源与性能.md: /docs/zh/server/performance/overall/system_resource/system_resources_and_performance.md +/docs/zh/server/performance/overall/system_resource/system_resources_and_performance.md: /docs/zh/server/performance/system_resources_and_performance.md /docs/zh/docs/Administration/使用KAE加速引擎.md: /docs/zh/server/performance/cpu_optimization/kae/using_the_kae.md +/docs/zh/server/performance/cpu_optimization/kae/using_the_kae.md: /docs/zh/server/performance/kae/using_the_kae.md /docs/zh/docs/A-Tune/认识A-Tune.md: /docs/zh/server/performance/system_optimization/atune/getting_to_know_a_tune.md +/docs/zh/server/performance/system_optimization/atune/getting_to_know_a_tune.md: /docs/zh/server/performance/atune/getting_to_know_a_tune.md /docs/zh/docs/A-Tune/安装与部署.md: /docs/zh/server/performance/system_optimization/atune/installation_and_deployment.md +/docs/zh/server/performance/system_optimization/atune/installation_and_deployment.md: /docs/zh/server/performance/atune/installation_and_deployment.md /docs/zh/docs/A-Tune/使用方法.md: /docs/zh/server/performance/system_optimization/atune/usage_instructions.md +/docs/zh/server/performance/system_optimization/atune/usage_instructions.md: /docs/zh/server/performance/atune/usage_instructions.md /docs/zh/docs/A-Tune/native-turbo.md: /docs/zh/server/performance/system_optimization/atune/native_turbo.md +/docs/zh/server/performance/system_optimization/atune/native_turbo.md: /docs/zh/server/performance/atune/native_turbo.md /docs/zh/docs/A-Tune/附录.md: /docs/zh/server/performance/system_optimization/atune/appendix.md +/docs/zh/server/performance/system_optimization/atune/appendix.md: /docs/zh/server/performance/atune/appendix.md /docs/zh/docs/sysBoost/认识sysBoost.md: /docs/zh/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md +/docs/zh/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md: /docs/zh/server/performance/sysboost/getting_to_know_sysboost.md /docs/zh/docs/sysBoost/安装与部署.md: /docs/zh/server/performance/cpu_optimization/sysboost/installation_and_deployment.md +/docs/zh/server/performance/cpu_optimization/sysboost/installation_and_deployment.md: /docs/zh/server/performance/sysboost/installation_and_deployment.md /docs/zh/docs/sysBoost/使用方法.md: /docs/zh/server/performance/cpu_optimization/sysboost/usage_instructions.md +/docs/zh/server/performance/cpu_optimization/sysboost/usage_instructions.md: /docs/zh/server/performance/sysboost/usage_instructions.md /docs/zh/docs/oeAware/oeAware用户指南.md: /docs/zh/server/performance/tuning_framework/oeaware/oeaware_user_guide.md +/docs/zh/server/performance/tuning_framework/oeaware/oeaware_user_guide.md: /docs/zh/server/performance/oeaware/oeaware_user_guide.md /docs/zh/docs/ApplicationDev/application-development.md: /docs/zh/server/development/application_dev/application_development.md /docs/zh/docs/ApplicationDev/开发环境准备.md: /docs/zh/server/development/application_dev/preparations_for_development_environment.md /docs/zh/docs/ApplicationDev/使用GCC编译.md: /docs/zh/server/development/application_dev/using_gcc_for_compilation.md @@ -532,16 +543,27 @@ /docs/en/docs/en/docs/Administration/configuring-the-network.md: /docs/en/server/network/network_config/network_configuration.md /docs/en/docs/en/docs/Gazelle/Gazelle.md: /docs/en/server/network/gazelle/gazelle_user_guide.md /docs/en/docs/en/docs/ops_guide/system-resources-and-performance.md: /docs/en/server/performance/overall/system_resource/system_resources_and_performance.md +/docs/en/server/performance/overall/system_resource/system_resources_and_performance.md: /docs/en/server/performance/system_resource/system_resources_and_performance.md /docs/en/docs/en/docs/Administration/using-the-kae.md: /docs/en/server/performance/cpu_optimization/kae/using_the_kae.md +/docs/en/server/performance/cpu_optimization/kae/using_the_kae.md: /docs/en/server/performance/kae/using_the_kae.md /docs/en/docs/en/docs/A-Tune/getting-to-know-a-tune.md: /docs/en/server/performance/system_optimization/atune/getting_to_know_a_tune.md +/docs/en/server/performance/system_optimization/atune/getting_to_know_a_tune.md: /docs/en/server/performance/atune/getting_to_know_a_tune.md /docs/en/docs/en/docs/A-Tune/installation-and-deployment.md: /docs/en/server/performance/system_optimization/atune/installation_and_deployment.md +/docs/en/server/performance/system_optimization/atune/installation_and_deployment.md: /docs/en/server/performance/atune/installation_and_deployment.md /docs/en/docs/en/docs/A-Tune/usage-instructions.md: /docs/en/server/performance/system_optimization/atune/usage_instructions.md +/docs/en/server/performance/system_optimization/atune/usage_instructions.md: /docs/en/server/performance/atune/usage_instructions.md /docs/en/docs/en/docs/A-Tune/native-turbo.md: /docs/en/server/performance/system_optimization/atune/native_turbo.md +/docs/en/server/performance/system_optimization/atune/native_turbo.md: /docs/en/server/performance/atune/native_turbo.md /docs/en/docs/en/docs/A-Tune/appendixes.md: /docs/en/server/performance/system_optimization/atune/appendix.md +/docs/en/server/performance/system_optimization/atune/appendix.md: /docs/en/server/performance/atune/appendix.md /docs/en/docs/en/docs/sysBoost/getting-to-know-sysBoost.md: /docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md +/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md: /docs/en/server/performance/sysboost/getting_to_know_sysboost.md /docs/en/docs/en/docs/sysBoost/installation-and-deployment.md: /docs/en/server/performance/cpu_optimization/sysboost/installation_and_deployment.md +/docs/en/server/performance/cpu_optimization/sysboost/installation_and_deployment.md: /docs/en/server/performance/sysboost/installation_and_deployment.md /docs/en/docs/en/docs/sysBoost/usage-instructions.md: /docs/en/server/performance/cpu_optimization/sysboost/usage_instructions.md +/docs/en/server/performance/cpu_optimization/sysboost/usage_instructions.md: /docs/en/server/performance/sysboost/usage_instructions.md /docs/en/docs/en/docs/oeAware/oeAware_user_guide.md: /docs/en/server/performance/tuning_framework/oeaware/oeaware_user_guide.md +/docs/en/server/performance/tuning_framework/oeaware/oeaware_user_guide.md: /docs/en/server/performance/oeaware/oeaware_user_guide.md /docs/en/docs/en/docs/ApplicationDev/application-development.md: /docs/en/server/development/application_dev/application_development.md /docs/en/docs/en/docs/ApplicationDev/preparations-for-development-environment.md: /docs/en/server/development/application_dev/preparations_for_development_environment.md /docs/en/docs/en/docs/ApplicationDev/using-gcc-for-compilation.md: /docs/en/server/development/application_dev/using_gcc_for_compilation.md diff --git a/docs/en/server/_toc.yaml b/docs/en/server/_toc.yaml index 3376a8e6..f85d2dca 100644 --- a/docs/en/server/_toc.yaml +++ b/docs/en/server/_toc.yaml @@ -46,17 +46,19 @@ sections: sections: - label: Overview sections: - - href: ./performance/overall/system_resource/_toc.yaml + - href: ./performance/system_resource/_toc.yaml - label: Tuning Framework sections: - - href: ./performance/tuning_framework/oeaware/_toc.yaml + - href: + upstream: https://gitee.com/openeuler/oeAware-manager/blob/master/docs/en/2403_lts_sp1/_toc.yaml + path: ./performance/oeaware - label: CPU Optimization sections: - - href: ./performance/cpu_optimization/sysboost/_toc.yaml - - href: ./performance/cpu_optimization/kae/_toc.yaml + - href: ./performance/sysboost/_toc.yaml + - href: ./performance/kae/_toc.yaml - label: System Optimization sections: - - href: ./performance/system_optimization/atune/_toc.yaml + - href: ./performance/atune/_toc.yaml - label: Application Development sections: - href: ./development/application_dev/_toc.yaml diff --git a/docs/en/server/performance/atune/_toc.yaml b/docs/en/server/performance/atune/_toc.yaml new file mode 100644 index 00000000..27ca8cf8 --- /dev/null +++ b/docs/en/server/performance/atune/_toc.yaml @@ -0,0 +1,14 @@ +label: A-Tune User Guide +isManual: true +description: Optimized openEuler performance through AI-powered, automated tuning +sections: + - label: Getting to Know A-Tune + href: ./getting_to_know_a_tune.md + - label: Installation and Deployment + href: ./installation_and_deployment.md + - label: Usage Instructions + href: ./usage_instructions.md + - label: Native-Turbo + href: ./native_turbo.md + - label: Appendix + href: ./appendix.md diff --git a/docs/en/server/performance/system_optimization/atune/appendix.md b/docs/en/server/performance/atune/appendix.md similarity index 100% rename from docs/en/server/performance/system_optimization/atune/appendix.md rename to docs/en/server/performance/atune/appendix.md diff --git a/docs/en/server/performance/system_optimization/atune/figures/picture1.png b/docs/en/server/performance/atune/figures/picture1.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/picture1.png rename to docs/en/server/performance/atune/figures/picture1.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/picture4.png b/docs/en/server/performance/atune/figures/picture4.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/picture4.png rename to docs/en/server/performance/atune/figures/picture4.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0213178479.png b/docs/en/server/performance/atune/figures/zh-cn_image_0213178479.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0213178479.png rename to docs/en/server/performance/atune/figures/zh-cn_image_0213178479.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0213178480.png b/docs/en/server/performance/atune/figures/zh-cn_image_0213178480.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0213178480.png rename to docs/en/server/performance/atune/figures/zh-cn_image_0213178480.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0214540398.png b/docs/en/server/performance/atune/figures/zh-cn_image_0214540398.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0214540398.png rename to docs/en/server/performance/atune/figures/zh-cn_image_0214540398.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0227497000.png b/docs/en/server/performance/atune/figures/zh-cn_image_0227497000.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0227497000.png rename to docs/en/server/performance/atune/figures/zh-cn_image_0227497000.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0227497343.png b/docs/en/server/performance/atune/figures/zh-cn_image_0227497343.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0227497343.png rename to docs/en/server/performance/atune/figures/zh-cn_image_0227497343.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0231122163.png b/docs/en/server/performance/atune/figures/zh-cn_image_0231122163.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0231122163.png rename to docs/en/server/performance/atune/figures/zh-cn_image_0231122163.png diff --git a/docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0245342444.png b/docs/en/server/performance/atune/figures/zh-cn_image_0245342444.png similarity index 100% rename from docs/en/server/performance/system_optimization/atune/figures/zh-cn_image_0245342444.png rename to docs/en/server/performance/atune/figures/zh-cn_image_0245342444.png diff --git a/docs/en/server/performance/system_optimization/atune/getting_to_know_a_tune.md b/docs/en/server/performance/atune/getting_to_know_a_tune.md similarity index 100% rename from docs/en/server/performance/system_optimization/atune/getting_to_know_a_tune.md rename to docs/en/server/performance/atune/getting_to_know_a_tune.md diff --git a/docs/en/server/performance/system_optimization/atune/installation_and_deployment.md b/docs/en/server/performance/atune/installation_and_deployment.md similarity index 98% rename from docs/en/server/performance/system_optimization/atune/installation_and_deployment.md rename to docs/en/server/performance/atune/installation_and_deployment.md index 10730ff9..1198398b 100644 --- a/docs/en/server/performance/system_optimization/atune/installation_and_deployment.md +++ b/docs/en/server/performance/atune/installation_and_deployment.md @@ -14,7 +14,7 @@ This chapter describes how to install and deploy A-Tune. ## Environment Preparation -For details about installing an openEuler OS, see the [_openEuler Installation Guide_](../../../installation_upgrade/installation/installation_on_servers.md). +For details about installing an openEuler OS, see the [_openEuler Installation Guide_](../../installation_upgrade/installation/installation_on_servers.md). ## A-Tune Installation @@ -399,7 +399,7 @@ In distributed deployment mode, you need to configure the write the IP address a 1. This document does not describe how to configure the authentication certificates. You can set **rest_tls** or **engine_tls** in the **atuned.cnf** and **engine.cnf** files to **false** if necessary. 2. After modifying the configuration file, restart the service. Otherwise, the modification does not take effect. 3. Do not enable the proxy when using A-Tune. -4. The **disk** and **network** items of the **\[system]** section in the **atuned.cnf** file need to be modified. For details about how to modify the items, see the [A-Tune User Guide](https://gitee.com/gaoruoshu/A-Tune/blob/master/Documentation/UserGuide/A-Tune%E7%94%A8%E6%88%B7%E6%8C%87%E5%8D%97.md). +4. The **disk** and **network** items of the **\[system]** section in the **atuned.cnf** file need to be modified. ### Example diff --git a/docs/en/server/performance/system_optimization/atune/native_turbo.md b/docs/en/server/performance/atune/native_turbo.md similarity index 100% rename from docs/en/server/performance/system_optimization/atune/native_turbo.md rename to docs/en/server/performance/atune/native_turbo.md diff --git a/docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-caution.gif b/docs/en/server/performance/atune/public_sys-resources/icon-caution.gif similarity index 100% rename from docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-caution.gif rename to docs/en/server/performance/atune/public_sys-resources/icon-caution.gif diff --git a/docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-danger.gif b/docs/en/server/performance/atune/public_sys-resources/icon-danger.gif similarity index 100% rename from docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-danger.gif rename to docs/en/server/performance/atune/public_sys-resources/icon-danger.gif diff --git a/docs/en/server/performance/cpu_optimization/sysboost/figures/icon-note.gif b/docs/en/server/performance/atune/public_sys-resources/icon-note.gif similarity index 100% rename from docs/en/server/performance/cpu_optimization/sysboost/figures/icon-note.gif rename to docs/en/server/performance/atune/public_sys-resources/icon-note.gif diff --git a/docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-notice.gif b/docs/en/server/performance/atune/public_sys-resources/icon-notice.gif similarity index 100% rename from docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-notice.gif rename to docs/en/server/performance/atune/public_sys-resources/icon-notice.gif diff --git a/docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-tip.gif b/docs/en/server/performance/atune/public_sys-resources/icon-tip.gif similarity index 100% rename from docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-tip.gif rename to docs/en/server/performance/atune/public_sys-resources/icon-tip.gif diff --git a/docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-warning.gif b/docs/en/server/performance/atune/public_sys-resources/icon-warning.gif similarity index 100% rename from docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-warning.gif rename to docs/en/server/performance/atune/public_sys-resources/icon-warning.gif diff --git a/docs/en/server/performance/system_optimization/atune/usage_instructions.md b/docs/en/server/performance/atune/usage_instructions.md similarity index 100% rename from docs/en/server/performance/system_optimization/atune/usage_instructions.md rename to docs/en/server/performance/atune/usage_instructions.md diff --git a/docs/en/server/performance/cpu_optimization/sysboost/sysboost.md b/docs/en/server/performance/cpu_optimization/sysboost/sysboost.md deleted file mode 100644 index 758405a3..00000000 --- a/docs/en/server/performance/cpu_optimization/sysboost/sysboost.md +++ /dev/null @@ -1,5 +0,0 @@ -# sysBoost User Guide - -This document describes how to install and use sysBoost, which is an online ELF reordering optimization software for openEuler. - -This document is intended for developers, open-source enthusiasts, and partners who use the openEuler system and want to know and use sysBoost. You need to have basic knowledge of the Linux OS. diff --git a/docs/en/server/performance/cpu_optimization/kae/_toc.yaml b/docs/en/server/performance/kae/_toc.yaml similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/_toc.yaml rename to docs/en/server/performance/kae/_toc.yaml diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0229622729.png b/docs/en/server/performance/kae/figures/en-us_image_0229622729.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0229622729.png rename to docs/en/server/performance/kae/figures/en-us_image_0229622729.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0229622789.png b/docs/en/server/performance/kae/figures/en-us_image_0229622789.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0229622789.png rename to docs/en/server/performance/kae/figures/en-us_image_0229622789.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0230050789.png b/docs/en/server/performance/kae/figures/en-us_image_0230050789.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0230050789.png rename to docs/en/server/performance/kae/figures/en-us_image_0230050789.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143189.png b/docs/en/server/performance/kae/figures/en-us_image_0231143189.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143189.png rename to docs/en/server/performance/kae/figures/en-us_image_0231143189.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143191.png b/docs/en/server/performance/kae/figures/en-us_image_0231143191.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143191.png rename to docs/en/server/performance/kae/figures/en-us_image_0231143191.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143193.png b/docs/en/server/performance/kae/figures/en-us_image_0231143193.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143193.png rename to docs/en/server/performance/kae/figures/en-us_image_0231143193.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143195.png b/docs/en/server/performance/kae/figures/en-us_image_0231143195.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143195.png rename to docs/en/server/performance/kae/figures/en-us_image_0231143195.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143196.png b/docs/en/server/performance/kae/figures/en-us_image_0231143196.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143196.png rename to docs/en/server/performance/kae/figures/en-us_image_0231143196.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143197.png b/docs/en/server/performance/kae/figures/en-us_image_0231143197.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143197.png rename to docs/en/server/performance/kae/figures/en-us_image_0231143197.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143198.png b/docs/en/server/performance/kae/figures/en-us_image_0231143198.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231143198.png rename to docs/en/server/performance/kae/figures/en-us_image_0231143198.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563132.png b/docs/en/server/performance/kae/figures/en-us_image_0231563132.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563132.png rename to docs/en/server/performance/kae/figures/en-us_image_0231563132.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563134.png b/docs/en/server/performance/kae/figures/en-us_image_0231563134.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563134.png rename to docs/en/server/performance/kae/figures/en-us_image_0231563134.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563135.png b/docs/en/server/performance/kae/figures/en-us_image_0231563135.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563135.png rename to docs/en/server/performance/kae/figures/en-us_image_0231563135.png diff --git a/docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563136.png b/docs/en/server/performance/kae/figures/en-us_image_0231563136.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/figures/en-us_image_0231563136.png rename to docs/en/server/performance/kae/figures/en-us_image_0231563136.png diff --git a/docs/en/server/performance/cpu_optimization/kae/using_the_kae.md b/docs/en/server/performance/kae/using_the_kae.md similarity index 100% rename from docs/en/server/performance/cpu_optimization/kae/using_the_kae.md rename to docs/en/server/performance/kae/using_the_kae.md diff --git a/docs/en/server/performance/cpu_optimization/sysboost/_toc.yaml b/docs/en/server/performance/sysboost/_toc.yaml similarity index 36% rename from docs/en/server/performance/cpu_optimization/sysboost/_toc.yaml rename to docs/en/server/performance/sysboost/_toc.yaml index 18e1daac..554eeac8 100644 --- a/docs/en/server/performance/cpu_optimization/sysboost/_toc.yaml +++ b/docs/en/server/performance/sysboost/_toc.yaml @@ -2,12 +2,9 @@ label: sysBoost User Guide isManual: true description: Enhance code compatibility with the CPU microarchitecture of the execution environment to boost program performance sections: - - label: sysBoost User Guide - href: ./sysboost.md - sections: - - label: Getting to Know sysBoost - href: ./getting_to_know_sysboost.md - - label: Installation and Deployment - href: ./installation_and_deployment.md - - label: Usage Instructions - href: ./usage_instructions.md + - label: Getting to Know sysBoost + href: ./getting_to_know_sysboost.md + - label: Installation and Deployment + href: ./installation_and_deployment.md + - label: Usage Instructions + href: ./usage_instructions.md diff --git a/docs/en/server/performance/cpu_optimization/sysboost/figures/architecture.png b/docs/en/server/performance/sysboost/figures/architecture.png similarity index 100% rename from docs/en/server/performance/cpu_optimization/sysboost/figures/architecture.png rename to docs/en/server/performance/sysboost/figures/architecture.png diff --git a/docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-note.gif b/docs/en/server/performance/sysboost/figures/icon-note.gif similarity index 100% rename from docs/en/server/performance/system_optimization/atune/public_sys-resources/icon-note.gif rename to docs/en/server/performance/sysboost/figures/icon-note.gif diff --git a/docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md b/docs/en/server/performance/sysboost/getting_to_know_sysboost.md similarity index 100% rename from docs/en/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md rename to docs/en/server/performance/sysboost/getting_to_know_sysboost.md diff --git a/docs/en/server/performance/cpu_optimization/sysboost/installation_and_deployment.md b/docs/en/server/performance/sysboost/installation_and_deployment.md similarity index 100% rename from docs/en/server/performance/cpu_optimization/sysboost/installation_and_deployment.md rename to docs/en/server/performance/sysboost/installation_and_deployment.md diff --git a/docs/en/server/performance/cpu_optimization/sysboost/usage_instructions.md b/docs/en/server/performance/sysboost/usage_instructions.md similarity index 100% rename from docs/en/server/performance/cpu_optimization/sysboost/usage_instructions.md rename to docs/en/server/performance/sysboost/usage_instructions.md diff --git a/docs/en/server/performance/system_optimization/atune/_toc.yaml b/docs/en/server/performance/system_optimization/atune/_toc.yaml deleted file mode 100644 index 0de72ab9..00000000 --- a/docs/en/server/performance/system_optimization/atune/_toc.yaml +++ /dev/null @@ -1,17 +0,0 @@ -label: A-Tune User Guide -isManual: true -description: Optimized openEuler performance through AI-powered, automated tuning -sections: - - label: A-Tune User Guide - href: ./a_tune.md - sections: - - label: Getting to Know A-Tune - href: ./getting_to_know_a_tune.md - - label: Installation and Deployment - href: ./installation_and_deployment.md - - label: Usage Instructions - href: ./usage_instructions.md - - label: Native-Turbo - href: ./native_turbo.md - - label: Appendix - href: ./appendix.md diff --git a/docs/en/server/performance/system_optimization/atune/a_tune.md b/docs/en/server/performance/system_optimization/atune/a_tune.md deleted file mode 100644 index b481797f..00000000 --- a/docs/en/server/performance/system_optimization/atune/a_tune.md +++ /dev/null @@ -1,5 +0,0 @@ -# A-Tune User Guide - -This document describes how to install and use A-Tune, which is a performance self-optimization software for openEuler. - -This document is intended for developers, open-source enthusiasts, and partners who use the openEuler system and want to know and use A-Tune. You need to have basic knowledge of the Linux OS. diff --git a/docs/en/server/performance/overall/system_resource/_toc.yaml b/docs/en/server/performance/system_resource/_toc.yaml similarity index 100% rename from docs/en/server/performance/overall/system_resource/_toc.yaml rename to docs/en/server/performance/system_resource/_toc.yaml diff --git a/docs/en/server/performance/overall/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png b/docs/en/server/performance/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png rename to docs/en/server/performance/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001321685172.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001321685172.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001321685172.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001321685172.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322112990.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001322112990.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322112990.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001322112990.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322219840.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001322219840.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322219840.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001322219840.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322372918.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001322372918.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322372918.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001322372918.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322379488.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001322379488.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001322379488.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001322379488.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001335457246.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001335457246.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001335457246.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001335457246.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001335816300.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001335816300.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001335816300.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001335816300.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001336448570.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001336448570.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001336448570.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001336448570.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001336729664.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001336729664.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001336729664.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001336729664.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337000118.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337000118.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337000118.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337000118.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337039920.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337039920.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337039920.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337039920.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337051916.jpg b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337051916.jpg similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337051916.jpg rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337051916.jpg diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337053248.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337053248.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337053248.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337053248.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337172594.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337172594.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337172594.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337172594.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337212144.jpg b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337212144.jpg similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337212144.jpg rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337212144.jpg diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337260780.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337260780.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337260780.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337260780.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337268560.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337268560.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337268560.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337268560.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337268820.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337268820.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337268820.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337268820.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337419960.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337419960.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337419960.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337419960.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337420372.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337420372.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337420372.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337420372.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337422904.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337422904.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337422904.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337422904.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337424024.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337424024.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337424024.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337424024.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337424304.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337424304.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337424304.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337424304.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337427216.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337427216.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337427216.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337427216.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337427392.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337427392.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337427392.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337427392.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337533690.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337533690.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337533690.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337533690.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337536842.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337536842.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337536842.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337536842.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337579708.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337579708.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337579708.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337579708.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337580216.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337580216.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337580216.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337580216.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337584296.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337584296.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337584296.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337584296.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337696078.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337696078.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337696078.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337696078.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337740252.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337740252.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337740252.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337740252.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337740540.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337740540.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337740540.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337740540.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337747132.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337747132.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337747132.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337747132.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337748300.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337748300.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337748300.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337748300.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337748528.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001337748528.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001337748528.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001337748528.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372249333.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001372249333.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372249333.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001372249333.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372748125.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001372748125.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372748125.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001372748125.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372821865.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001372821865.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372821865.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001372821865.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372824637.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001372824637.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001372824637.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001372824637.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001373373585.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001373373585.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001373373585.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001373373585.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001373379529.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001373379529.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001373379529.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001373379529.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001384808269.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001384808269.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001384808269.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001384808269.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001385585749.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001385585749.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001385585749.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001385585749.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001385611905.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001385611905.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001385611905.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001385611905.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001385905845.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001385905845.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001385905845.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001385905845.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001386149037.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001386149037.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001386149037.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001386149037.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001386699925.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001386699925.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001386699925.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001386699925.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387293085.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387293085.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387293085.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387293085.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387413509.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387413509.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387413509.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387413509.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387413793.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387413793.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387413793.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387413793.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387415629.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387415629.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387415629.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387415629.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387691985.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387691985.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387691985.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387691985.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387692269.jpg b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387692269.jpg similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387692269.jpg rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387692269.jpg diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387692893.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387692893.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387692893.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387692893.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387755969.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387755969.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387755969.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387755969.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387780357.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387780357.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387780357.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387780357.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387784693.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387784693.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387784693.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387784693.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387787605.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387787605.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387787605.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387787605.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387855149.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387855149.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387855149.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387855149.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387857005.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387857005.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387857005.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387857005.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387902849.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387902849.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387902849.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387902849.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387907229.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387907229.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387907229.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387907229.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387908045.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387908045.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387908045.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387908045.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387908453.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387908453.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387908453.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387908453.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387961737.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001387961737.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001387961737.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001387961737.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388020197.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388020197.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388020197.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388020197.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388024321.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388024321.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388024321.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388024321.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388024397.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388024397.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388024397.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388024397.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388028161.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388028161.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388028161.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388028161.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388028537.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388028537.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388028537.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388028537.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388184025.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388184025.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388184025.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388184025.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388187249.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388187249.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388187249.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388187249.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388187325.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388187325.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388187325.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388187325.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388188365.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388188365.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388188365.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388188365.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388241577.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388241577.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388241577.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388241577.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388972645.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001388972645.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001388972645.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001388972645.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001389098425.png b/docs/en/server/performance/system_resource/images/zh-cn_image_0000001389098425.png similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_image_0000001389098425.png rename to docs/en/server/performance/system_resource/images/zh-cn_image_0000001389098425.png diff --git a/docs/en/server/performance/overall/system_resource/images/zh-cn_other_0000001337581224.jpeg b/docs/en/server/performance/system_resource/images/zh-cn_other_0000001337581224.jpeg similarity index 100% rename from docs/en/server/performance/overall/system_resource/images/zh-cn_other_0000001337581224.jpeg rename to docs/en/server/performance/system_resource/images/zh-cn_other_0000001337581224.jpeg diff --git a/docs/en/server/performance/overall/system_resource/system_resources_and_performance.md b/docs/en/server/performance/system_resource/system_resources_and_performance.md similarity index 100% rename from docs/en/server/performance/overall/system_resource/system_resources_and_performance.md rename to docs/en/server/performance/system_resource/system_resources_and_performance.md diff --git a/docs/zh/server/_toc.yaml b/docs/zh/server/_toc.yaml index a7f413a6..5e2ed372 100644 --- a/docs/zh/server/_toc.yaml +++ b/docs/zh/server/_toc.yaml @@ -46,17 +46,19 @@ sections: sections: - label: 概述 sections: - - href: ./performance/overall/system_resource/_toc.yaml + - href: ./performance/system_resource/_toc.yaml - label: 调优框架 sections: - - href: ./performance/tuning_framework/oeaware/_toc.yaml + - href: + upstream: https://gitee.com/openeuler/oeAware-manager/blob/master/docs/zh/2403_lts_sp1/_toc.yaml + path: ./performance/oeaware - label: CPU调优 sections: - - href: ./performance/cpu_optimization/sysboost/_toc.yaml - - href: ./performance/cpu_optimization/kae/_toc.yaml + - href: ./performance/sysboost/_toc.yaml + - href: ./performance/kae/_toc.yaml - label: 系统调优 sections: - - href: ./performance/system_optimization/atune/_toc.yaml + - href: ./performance/atune/_toc.yaml - label: 应用开发 sections: - href: ./development/application_dev/_toc.yaml diff --git a/docs/zh/server/performance/system_optimization/atune/_toc.yaml b/docs/zh/server/performance/atune/_toc.yaml similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/_toc.yaml rename to docs/zh/server/performance/atune/_toc.yaml diff --git a/docs/zh/server/performance/system_optimization/atune/appendix.md b/docs/zh/server/performance/atune/appendix.md similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/appendix.md rename to docs/zh/server/performance/atune/appendix.md diff --git a/docs/zh/server/performance/system_optimization/atune/figures/picture1.png b/docs/zh/server/performance/atune/figures/picture1.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/picture1.png rename to docs/zh/server/performance/atune/figures/picture1.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/picture4.png b/docs/zh/server/performance/atune/figures/picture4.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/picture4.png rename to docs/zh/server/performance/atune/figures/picture4.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0213178479.png b/docs/zh/server/performance/atune/figures/zh-cn_image_0213178479.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0213178479.png rename to docs/zh/server/performance/atune/figures/zh-cn_image_0213178479.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0213178480.png b/docs/zh/server/performance/atune/figures/zh-cn_image_0213178480.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0213178480.png rename to docs/zh/server/performance/atune/figures/zh-cn_image_0213178480.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0214540398.png b/docs/zh/server/performance/atune/figures/zh-cn_image_0214540398.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0214540398.png rename to docs/zh/server/performance/atune/figures/zh-cn_image_0214540398.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0227497000.png b/docs/zh/server/performance/atune/figures/zh-cn_image_0227497000.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0227497000.png rename to docs/zh/server/performance/atune/figures/zh-cn_image_0227497000.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0227497343.png b/docs/zh/server/performance/atune/figures/zh-cn_image_0227497343.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0227497343.png rename to docs/zh/server/performance/atune/figures/zh-cn_image_0227497343.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0231122163.png b/docs/zh/server/performance/atune/figures/zh-cn_image_0231122163.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0231122163.png rename to docs/zh/server/performance/atune/figures/zh-cn_image_0231122163.png diff --git a/docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0245342444.png b/docs/zh/server/performance/atune/figures/zh-cn_image_0245342444.png similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/figures/zh-cn_image_0245342444.png rename to docs/zh/server/performance/atune/figures/zh-cn_image_0245342444.png diff --git a/docs/zh/server/performance/system_optimization/atune/getting_to_know_a_tune.md b/docs/zh/server/performance/atune/getting_to_know_a_tune.md similarity index 99% rename from docs/zh/server/performance/system_optimization/atune/getting_to_know_a_tune.md rename to docs/zh/server/performance/atune/getting_to_know_a_tune.md index 2d68b75b..6bda1157 100644 --- a/docs/zh/server/performance/system_optimization/atune/getting_to_know_a_tune.md +++ b/docs/zh/server/performance/atune/getting_to_know_a_tune.md @@ -67,7 +67,7 @@ A-Tune支持的主要特性、特性成熟度以及使用建议请参见[表1](# ### 支持业务模型 -根据应用的负载特征,A-Tune将业务分为11大类,各类型的负载特征和A-Tune支持的应用请参见[表2](#table2819164611311)。 +根据应用的负载特征,A-Tune将业务分为11大类,各类型的负载特征和A-Tune支持的应用请参见表2。 **表 2** 支持的业务类型和应用 diff --git a/docs/zh/server/performance/system_optimization/atune/installation_and_deployment.md b/docs/zh/server/performance/atune/installation_and_deployment.md similarity index 98% rename from docs/zh/server/performance/system_optimization/atune/installation_and_deployment.md rename to docs/zh/server/performance/atune/installation_and_deployment.md index 5b873aab..9d1a0a6c 100644 --- a/docs/zh/server/performance/system_optimization/atune/installation_and_deployment.md +++ b/docs/zh/server/performance/atune/installation_and_deployment.md @@ -10,7 +10,7 @@ ## 环境准备 -- 安装openEuler系统,安装方法参考 《[安装指南](../../../../server/installation_upgrade/installation/installation_on_servers.md)》。 +- 安装openEuler系统,安装方法参考[《安装指南》](../../../server/installation_upgrade/installation/installation_on_servers.md)。 - 安装A-Tune需要使用root权限。 @@ -398,7 +398,7 @@ A-Tune安装完成后,需要配置A-Tune服务,然后启动A-Tune服务。 1. 本文档不对认证证书配置方法作详细说明,如有需要也可以将atuned.cnf和engine.cnf中的rest_tls/engine_tls设成false。 2. 修改完配置文件后需要重启服务,否则修改不会生效。 3. 注意使用atune服务时不要同时打开代理。 -4. atuned.cnf 文件中的[system]模块的disk和network项需要修改,修改方法见[A-Tune用户指南2.4.1章节](https://gitee.com/gaoruoshu/A-Tune/blob/master/Documentation/UserGuide/A-Tune%E7%94%A8%E6%88%B7%E6%8C%87%E5%8D%97.md),本文不展开描述。 +4. atuned.cnf 文件中的[system]模块的disk和network项需要修改。 ### 举例 diff --git a/docs/zh/server/performance/system_optimization/atune/native_turbo.md b/docs/zh/server/performance/atune/native_turbo.md similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/native_turbo.md rename to docs/zh/server/performance/atune/native_turbo.md diff --git a/docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-caution.gif b/docs/zh/server/performance/atune/public_sys-resources/icon-caution.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-caution.gif rename to docs/zh/server/performance/atune/public_sys-resources/icon-caution.gif diff --git a/docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-danger.gif b/docs/zh/server/performance/atune/public_sys-resources/icon-danger.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-danger.gif rename to docs/zh/server/performance/atune/public_sys-resources/icon-danger.gif diff --git a/docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-note.gif b/docs/zh/server/performance/atune/public_sys-resources/icon-note.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-note.gif rename to docs/zh/server/performance/atune/public_sys-resources/icon-note.gif diff --git a/docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-notice.gif b/docs/zh/server/performance/atune/public_sys-resources/icon-notice.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-notice.gif rename to docs/zh/server/performance/atune/public_sys-resources/icon-notice.gif diff --git a/docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-tip.gif b/docs/zh/server/performance/atune/public_sys-resources/icon-tip.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-tip.gif rename to docs/zh/server/performance/atune/public_sys-resources/icon-tip.gif diff --git a/docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-warning.gif b/docs/zh/server/performance/atune/public_sys-resources/icon-warning.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/public_sys-resources/icon-warning.gif rename to docs/zh/server/performance/atune/public_sys-resources/icon-warning.gif diff --git a/docs/zh/server/performance/system_optimization/atune/usage_instructions.md b/docs/zh/server/performance/atune/usage_instructions.md similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/usage_instructions.md rename to docs/zh/server/performance/atune/usage_instructions.md diff --git a/docs/zh/server/performance/cpu_optimization/kae/_toc.yaml b/docs/zh/server/performance/kae/_toc.yaml similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/_toc.yaml rename to docs/zh/server/performance/kae/_toc.yaml diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/1665628542704.png b/docs/zh/server/performance/kae/figures/1665628542704.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/1665628542704.png rename to docs/zh/server/performance/kae/figures/1665628542704.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/AT_CHECK_Process.png b/docs/zh/server/performance/kae/figures/AT_CHECK_Process.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/AT_CHECK_Process.png rename to docs/zh/server/performance/kae/figures/AT_CHECK_Process.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png b/docs/zh/server/performance/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png rename to docs/zh/server/performance/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E-1.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png b/docs/zh/server/performance/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png rename to docs/zh/server/performance/kae/figures/D1376B2A-D036-41C4-B852-E8368F363B5E.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/PostgreSql_architecture.png b/docs/zh/server/performance/kae/figures/PostgreSql_architecture.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/PostgreSql_architecture.png rename to docs/zh/server/performance/kae/figures/PostgreSql_architecture.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/Process_Of_EXECVAT_ATCHECK.png b/docs/zh/server/performance/kae/figures/Process_Of_EXECVAT_ATCHECK.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/Process_Of_EXECVAT_ATCHECK.png rename to docs/zh/server/performance/kae/figures/Process_Of_EXECVAT_ATCHECK.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/RA-arch-1.png b/docs/zh/server/performance/kae/figures/RA-arch-1.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/RA-arch-1.png rename to docs/zh/server/performance/kae/figures/RA-arch-1.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/RA-arch-2.png b/docs/zh/server/performance/kae/figures/RA-arch-2.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/RA-arch-2.png rename to docs/zh/server/performance/kae/figures/RA-arch-2.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/TPCM.png b/docs/zh/server/performance/kae/figures/TPCM.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/TPCM.png rename to docs/zh/server/performance/kae/figures/TPCM.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/creat_datadisk.png b/docs/zh/server/performance/kae/figures/creat_datadisk.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/creat_datadisk.png rename to docs/zh/server/performance/kae/figures/creat_datadisk.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/creat_datadisk1.png b/docs/zh/server/performance/kae/figures/creat_datadisk1.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/creat_datadisk1.png rename to docs/zh/server/performance/kae/figures/creat_datadisk1.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/dim_architecture.jpg b/docs/zh/server/performance/kae/figures/dim_architecture.jpg similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/dim_architecture.jpg rename to docs/zh/server/performance/kae/figures/dim_architecture.jpg diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/etmem-system-architecture.png b/docs/zh/server/performance/kae/figures/etmem-system-architecture.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/etmem-system-architecture.png rename to docs/zh/server/performance/kae/figures/etmem-system-architecture.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/ima_digest_list_update.png b/docs/zh/server/performance/kae/figures/ima_digest_list_update.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/ima_digest_list_update.png rename to docs/zh/server/performance/kae/figures/ima_digest_list_update.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/ima_performance.gif b/docs/zh/server/performance/kae/figures/ima_performance.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/ima_performance.gif rename to docs/zh/server/performance/kae/figures/ima_performance.gif diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/ima_verification.png b/docs/zh/server/performance/kae/figures/ima_verification.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/ima_verification.png rename to docs/zh/server/performance/kae/figures/ima_verification.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/logical_architectureofMariaDB.png b/docs/zh/server/performance/kae/figures/logical_architectureofMariaDB.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/logical_architectureofMariaDB.png rename to docs/zh/server/performance/kae/figures/logical_architectureofMariaDB.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/login.png b/docs/zh/server/performance/kae/figures/login.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/login.png rename to docs/zh/server/performance/kae/figures/login.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/nginx_deployed_success.png b/docs/zh/server/performance/kae/figures/nginx_deployed_success.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/nginx_deployed_success.png rename to docs/zh/server/performance/kae/figures/nginx_deployed_success.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/nginx_start_failed.png b/docs/zh/server/performance/kae/figures/nginx_start_failed.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/nginx_start_failed.png rename to docs/zh/server/performance/kae/figures/nginx_start_failed.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/nginx_start_success.png b/docs/zh/server/performance/kae/figures/nginx_start_success.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/nginx_start_success.png rename to docs/zh/server/performance/kae/figures/nginx_start_success.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/postgres.png b/docs/zh/server/performance/kae/figures/postgres.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/postgres.png rename to docs/zh/server/performance/kae/figures/postgres.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/root_of_trust_framework.png b/docs/zh/server/performance/kae/figures/root_of_trust_framework.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/root_of_trust_framework.png rename to docs/zh/server/performance/kae/figures/root_of_trust_framework.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/top_display.png b/docs/zh/server/performance/kae/figures/top_display.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/top_display.png rename to docs/zh/server/performance/kae/figures/top_display.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/trusted_chain.png b/docs/zh/server/performance/kae/figures/trusted_chain.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/trusted_chain.png rename to docs/zh/server/performance/kae/figures/trusted_chain.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0229622729.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0229622729.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0229622729.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0229622729.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0229622789.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0229622789.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0229622789.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0229622789.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0230050789.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0230050789.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0230050789.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0230050789.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143176.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143176.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143176.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143176.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143177.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143177.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143177.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143177.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143178.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143178.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143178.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143178.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143180.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143180.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143180.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143180.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143181.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143181.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143181.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143181.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143183.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143183.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143183.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143183.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143185.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143185.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143185.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143185.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143187.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143187.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143187.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143187.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143189.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143189.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143189.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143189.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143191.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143191.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143191.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143191.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143193.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143193.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143193.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143193.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143195.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143195.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143195.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143195.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143196.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143196.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143196.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143196.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143197.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143197.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143197.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143197.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143198.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231143198.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231143198.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231143198.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563132.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231563132.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563132.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231563132.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563134.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231563134.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563134.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231563134.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563135.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231563135.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563135.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231563135.png diff --git a/docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563136.png b/docs/zh/server/performance/kae/figures/zh-cn_image_0231563136.png similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/figures/zh-cn_image_0231563136.png rename to docs/zh/server/performance/kae/figures/zh-cn_image_0231563136.png diff --git a/docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-caution.gif b/docs/zh/server/performance/kae/public_sys-resources/icon-caution.gif similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-caution.gif rename to docs/zh/server/performance/kae/public_sys-resources/icon-caution.gif diff --git a/docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-danger.gif b/docs/zh/server/performance/kae/public_sys-resources/icon-danger.gif similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-danger.gif rename to docs/zh/server/performance/kae/public_sys-resources/icon-danger.gif diff --git a/docs/zh/server/performance/cpu_optimization/sysboost/figures/icon-note.gif b/docs/zh/server/performance/kae/public_sys-resources/icon-note.gif similarity index 100% rename from docs/zh/server/performance/cpu_optimization/sysboost/figures/icon-note.gif rename to docs/zh/server/performance/kae/public_sys-resources/icon-note.gif diff --git a/docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-notice.gif b/docs/zh/server/performance/kae/public_sys-resources/icon-notice.gif similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-notice.gif rename to docs/zh/server/performance/kae/public_sys-resources/icon-notice.gif diff --git a/docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-tip.gif b/docs/zh/server/performance/kae/public_sys-resources/icon-tip.gif similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-tip.gif rename to docs/zh/server/performance/kae/public_sys-resources/icon-tip.gif diff --git a/docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-warning.gif b/docs/zh/server/performance/kae/public_sys-resources/icon-warning.gif similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-warning.gif rename to docs/zh/server/performance/kae/public_sys-resources/icon-warning.gif diff --git a/docs/zh/server/performance/cpu_optimization/kae/using_the_kae.md b/docs/zh/server/performance/kae/using_the_kae.md similarity index 100% rename from docs/zh/server/performance/cpu_optimization/kae/using_the_kae.md rename to docs/zh/server/performance/kae/using_the_kae.md diff --git a/docs/zh/server/performance/cpu_optimization/sysboost/_toc.yaml b/docs/zh/server/performance/sysboost/_toc.yaml similarity index 100% rename from docs/zh/server/performance/cpu_optimization/sysboost/_toc.yaml rename to docs/zh/server/performance/sysboost/_toc.yaml diff --git a/docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-note.gif b/docs/zh/server/performance/sysboost/figures/icon-note.gif similarity index 100% rename from docs/zh/server/performance/system_optimization/atune/public_sys-resources/icon-note.gif rename to docs/zh/server/performance/sysboost/figures/icon-note.gif diff --git "a/docs/zh/server/performance/cpu_optimization/sysboost/figures/\346\236\266\346\236\204.png" "b/docs/zh/server/performance/sysboost/figures/\346\236\266\346\236\204.png" similarity index 100% rename from "docs/zh/server/performance/cpu_optimization/sysboost/figures/\346\236\266\346\236\204.png" rename to "docs/zh/server/performance/sysboost/figures/\346\236\266\346\236\204.png" diff --git a/docs/zh/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md b/docs/zh/server/performance/sysboost/getting_to_know_sysboost.md similarity index 100% rename from docs/zh/server/performance/cpu_optimization/sysboost/getting_to_know_sysboost.md rename to docs/zh/server/performance/sysboost/getting_to_know_sysboost.md diff --git a/docs/zh/server/performance/cpu_optimization/sysboost/installation_and_deployment.md b/docs/zh/server/performance/sysboost/installation_and_deployment.md similarity index 93% rename from docs/zh/server/performance/cpu_optimization/sysboost/installation_and_deployment.md rename to docs/zh/server/performance/sysboost/installation_and_deployment.md index 2f406aec..202148f4 100644 --- a/docs/zh/server/performance/cpu_optimization/sysboost/installation_and_deployment.md +++ b/docs/zh/server/performance/sysboost/installation_and_deployment.md @@ -18,20 +18,20 @@ 1. 挂载openEuler的iso文件 - ``` + ```shell # 使用对应的openEuler版本 mount openEuler-xxx-aarch64-dvd.iso /mnt ``` 2. 配置本地yum源 - ``` + ```shell vim /etc/yum.repos.d/local.repo ``` 配置内容如下所示: - ``` + ```shell [localosrepo] name=localosrepo baseurl=file:///mnt @@ -42,13 +42,13 @@ 3. 安装sysBoost - ``` + ```shell yum install sysboost -y ``` 4. 验证是否安装成功,命令和回显如下表示安装成功 - ``` + ```shell rpm -qa | grep sysboost # sysboost-xxx rpm -qa | grep native-turbo @@ -57,7 +57,7 @@ 5. 安装需要合并的ELF文件所对应的relocation包 - ``` + ```shell yum install bash-relocation-xxx -y yum install ncurses-relocation-xxx -y ``` diff --git a/docs/zh/server/performance/cpu_optimization/sysboost/usage_instructions.md b/docs/zh/server/performance/sysboost/usage_instructions.md similarity index 91% rename from docs/zh/server/performance/cpu_optimization/sysboost/usage_instructions.md rename to docs/zh/server/performance/sysboost/usage_instructions.md index 35f4da2e..0befe2a0 100644 --- a/docs/zh/server/performance/cpu_optimization/sysboost/usage_instructions.md +++ b/docs/zh/server/performance/sysboost/usage_instructions.md @@ -1,15 +1,15 @@ # 使用方法 - ## 总体说明 -- 使用和配置sysBoost需要使用root权限。 -- sysBoost不支持多实例运行。 -- 请管理员确保配置文件的正确性。 - +- 使用和配置sysBoost需要使用root权限。 +- sysBoost不支持多实例运行。 +- 请管理员确保配置文件的正确性。 ## 配置方法 + ### 配置文件说明 + 配置文件目录:/etc/sysboost.d/ **表 1** 客户端toml文件配置说明 @@ -60,7 +60,7 @@ sysBoost的toml配置文件示例: -``` +```shell # /etc/sysboost.d/bash.toml elf_path = "/usr/bin/bash" mode = "static-nolibc" @@ -69,28 +69,26 @@ libs = ["/usr/lib64/libtinfo.so.6"] ## 操作方法 -- 启动sysBoost服务 +- 启动sysBoost服务 - ``` + ```shell systemctl start sysboost.service ``` -- 关闭sysBoost服务 +- 关闭sysBoost服务 - ``` + ```shell systemctl stop sysboost.service ``` -- 状态查询(若没有标红字体,说明sysBoost运行正常) +- 状态查询(若没有标红字体,说明sysBoost运行正常) - ``` + ```shell systemctl status sysboost.service ``` -- 日志(若sysBoost出现错误,可通过系统日志查询相关信息) +- 日志(若sysBoost出现错误,可通过系统日志查询相关信息) - ``` + ```shell cat /var/log/messages ``` - - diff --git a/docs/zh/server/performance/overall/system_resource/_toc.yaml b/docs/zh/server/performance/system_resource/_toc.yaml similarity index 100% rename from docs/zh/server/performance/overall/system_resource/_toc.yaml rename to docs/zh/server/performance/system_resource/_toc.yaml diff --git a/docs/zh/server/performance/overall/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png b/docs/zh/server/performance/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png rename to docs/zh/server/performance/system_resource/images/c50cb9df64f4659787c810167c89feb4_1884x257.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001321685172.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001321685172.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001321685172.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001321685172.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322112990.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322112990.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322112990.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322112990.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322219840.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322219840.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322219840.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322219840.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322372918.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322372918.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322372918.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322372918.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322379488.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322379488.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001322379488.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001322379488.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001335457246.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001335457246.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001335457246.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001335457246.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001335816300.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001335816300.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001335816300.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001335816300.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001336448570.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001336448570.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001336448570.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001336448570.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001336729664.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001336729664.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001336729664.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001336729664.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337000118.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337000118.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337000118.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337000118.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337039920.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337039920.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337039920.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337039920.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337051916.jpg b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337051916.jpg similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337051916.jpg rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337051916.jpg diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337053248.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337053248.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337053248.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337053248.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337172594.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337172594.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337172594.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337172594.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337212144.jpg b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337212144.jpg similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337212144.jpg rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337212144.jpg diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337260780.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337260780.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337260780.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337260780.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337268560.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337268560.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337268560.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337268560.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337268820.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337268820.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337268820.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337268820.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337419960.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337419960.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337419960.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337419960.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337420372.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337420372.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337420372.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337420372.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337422904.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337422904.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337422904.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337422904.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337424024.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337424024.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337424024.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337424024.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337424304.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337424304.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337424304.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337424304.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337427216.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337427216.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337427216.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337427216.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337427392.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337427392.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337427392.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337427392.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337533690.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337533690.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337533690.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337533690.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337536842.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337536842.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337536842.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337536842.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337579708.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337579708.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337579708.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337579708.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337580216.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337580216.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337580216.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337580216.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337584296.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337584296.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337584296.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337584296.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337696078.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337696078.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337696078.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337696078.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337740252.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337740252.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337740252.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337740252.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337740540.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337740540.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337740540.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337740540.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337747132.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337747132.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337747132.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337747132.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337748300.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337748300.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337748300.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337748300.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337748528.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337748528.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001337748528.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001337748528.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372249333.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372249333.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372249333.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372249333.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372748125.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372748125.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372748125.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372748125.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372821865.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372821865.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372821865.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372821865.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372824637.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372824637.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001372824637.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001372824637.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001373373585.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001373373585.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001373373585.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001373373585.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001373379529.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001373379529.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001373379529.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001373379529.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001384808269.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001384808269.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001384808269.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001384808269.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001385585749.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001385585749.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001385585749.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001385585749.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001385611905.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001385611905.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001385611905.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001385611905.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001385905845.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001385905845.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001385905845.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001385905845.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001386149037.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001386149037.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001386149037.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001386149037.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001386699925.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001386699925.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001386699925.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001386699925.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387293085.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387293085.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387293085.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387293085.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387413509.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387413509.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387413509.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387413509.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387413793.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387413793.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387413793.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387413793.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387415629.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387415629.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387415629.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387415629.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387691985.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387691985.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387691985.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387691985.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387692269.jpg b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387692269.jpg similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387692269.jpg rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387692269.jpg diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387692893.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387692893.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387692893.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387692893.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387755969.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387755969.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387755969.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387755969.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387780357.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387780357.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387780357.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387780357.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387784693.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387784693.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387784693.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387784693.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387787605.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387787605.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387787605.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387787605.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387855149.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387855149.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387855149.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387855149.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387857005.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387857005.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387857005.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387857005.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387902849.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387902849.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387902849.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387902849.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387907229.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387907229.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387907229.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387907229.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387908045.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387908045.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387908045.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387908045.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387908453.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387908453.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387908453.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387908453.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387961737.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387961737.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001387961737.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001387961737.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388020197.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388020197.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388020197.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388020197.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388024321.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388024321.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388024321.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388024321.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388024397.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388024397.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388024397.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388024397.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388028161.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388028161.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388028161.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388028161.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388028537.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388028537.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388028537.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388028537.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388184025.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388184025.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388184025.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388184025.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388187249.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388187249.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388187249.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388187249.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388187325.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388187325.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388187325.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388187325.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388188365.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388188365.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388188365.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388188365.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388241577.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388241577.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388241577.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388241577.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388972645.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388972645.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001388972645.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001388972645.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001389098425.png b/docs/zh/server/performance/system_resource/images/zh-cn_image_0000001389098425.png similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_image_0000001389098425.png rename to docs/zh/server/performance/system_resource/images/zh-cn_image_0000001389098425.png diff --git a/docs/zh/server/performance/overall/system_resource/images/zh-cn_other_0000001337581224.jpeg b/docs/zh/server/performance/system_resource/images/zh-cn_other_0000001337581224.jpeg similarity index 100% rename from docs/zh/server/performance/overall/system_resource/images/zh-cn_other_0000001337581224.jpeg rename to docs/zh/server/performance/system_resource/images/zh-cn_other_0000001337581224.jpeg diff --git a/docs/zh/server/performance/overall/system_resource/system_resources_and_performance.md b/docs/zh/server/performance/system_resource/system_resources_and_performance.md similarity index 99% rename from docs/zh/server/performance/overall/system_resource/system_resources_and_performance.md rename to docs/zh/server/performance/system_resource/system_resources_and_performance.md index 03ec3004..0480cec4 100644 --- a/docs/zh/server/performance/overall/system_resource/system_resources_and_performance.md +++ b/docs/zh/server/performance/system_resource/system_resources_and_performance.md @@ -28,6 +28,7 @@ ![](./images/zh-cn_image_0000001385585749.png) 在命令的输出信息中,各字段所代表的含义如下: + |字段|含义| |--|--| |procs|进程信息字段。| -- Gitee