forked from mirror/NitWikit
fix some
This commit is contained in:
parent
adc60b4ac0
commit
2fa3ec59de
@ -17,32 +17,14 @@ slug: /optimize/jvm/graalvm
|
||||
<!--markdownlint-disable line-length-->
|
||||
|
||||
```text
|
||||
-XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysActAsServerClassMachine -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX:AllocatePrefetchStyle=3 -XX:NmethodSweepActivity=1 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:-DontCompileHugeMethods -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:+EagerJVMCI -Dgraal.TuneInlinerExploration=1 -Djdk.graal.CompilerConfiguration=enterprise
|
||||
```
|
||||
|
||||
<!--markdownlint-enable line-length-->
|
||||
|
||||
## G1GC
|
||||
|
||||
<!--markdownlint-disable line-length-->
|
||||
|
||||
```text
|
||||
-XX:+UseG1GC -XX:MaxGCPauseMillis=130 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=28 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=20 -XX:G1MixedGCCountTarget=3 -XX:InitiatingHeapOccupancyPercent=10 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=0 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -XX:G1SATBBufferEnqueueingThresholdPercent=30 -XX:G1ConcMarkStepDurationMillis=5 -XX:G1ConcRefinementServiceIntervalMillis=150 -XX:G1ConcRSHotCardLimit=16
|
||||
-XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=28 -XX:G1MaxNewSizePercent=50 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=15 -XX:G1MixedGCCountTarget=3 -XX:InitiatingHeapOccupancyPercent=20 -XX:G1MixedGCLiveThresholdPercent=90 -XX:SurvivorRatio=32 -XX:G1HeapWastePercent=5 -XX:MaxTenuringThreshold=1 -XX:+PerfDisableSharedMem -XX:G1SATBBufferEnqueueingThresholdPercent=30 -XX:G1ConcMarkStepDurationMillis=5 -XX:G1RSetUpdatingPauseTimePercent=0 -XX:+UseNUMA -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:NmethodSweepActivity=1 -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:AllocatePrefetchStyle=3 -XX:+AlwaysActAsServerClassMachine -XX:+EagerJVMCI -XX:+UseStringDeduplication -XX:+UseAES -XX:+UseAESIntrinsics -XX:+UseFMA -XX:+UseLoopPredicate -XX:+RangeCheckElimination -XX:+OptimizeStringConcat -XX:+UseThreadPriorities -XX:+OmitStackTraceInFastThrow -XX:+RewriteBytecodes -XX:+RewriteFrequentPairs -XX:+UseFPUForSpilling -XX:+UseFastStosb -XX:+UseNewLongLShift -XX:+UseVectorCmov -XX:+UseXMMForArrayCopy -XX:+UseXmmI2D -XX:+UseXmmI2F -XX:+UseXmmLoadAndClearUpper -XX:+UseXmmRegToRegMoveAll -XX:+EliminateLocks -XX:+DoEscapeAnalysis -XX:+AlignVector -XX:+OptimizeFill -XX:+EnableVectorSupport -XX:+UseCharacterCompareIntrinsics -XX:+UseCopySignIntrinsic -XX:+UseVectorStubs -XX:UseAVX=2 -XX:UseSSE=4 -XX:+UseFastJNIAccessors -XX:+UseInlineCaches -XX:+SegmentedCodeCache -Djdk.nio.maxCachedBufferSize=262144 -Dgraal.UsePriorityInlining=true -Dgraal.Vectorization=true -Dgraal.OptDuplication=true -Dgraal.DetectInvertedLoopsAsCounted=true -Dgraal.LoopInversion=true -Dgraal.VectorizeHashes=true -Dgraal.EnterprisePartialUnroll=true -Dgraal.VectorizeSIMD=true -Dgraal.StripMineNonCountedLoops=true -Dgraal.SpeculativeGuardMovement=true -Dgraal.TuneInlinerExploration=1 -Dgraal.LoopRotation=true -Dgraal.OptWriteMotion=true -Dgraal.CompilerConfiguration=enterprise
|
||||
```
|
||||
|
||||
<!--markdownlint-enable line-length-->
|
||||
|
||||
## ZGC
|
||||
|
||||
```text
|
||||
-XX:+UseZGC -XX:AllocatePrefetchStyle=1 -XX:-ZProactive
|
||||
```
|
||||
|
||||
:::warning
|
||||
|
||||
不要在 GraalVM 上使用 ZGenerational
|
||||
|
||||
:::
|
||||
GraalVM 不适合使用 ZGC,会导致重要优化被禁用
|
||||
|
||||
## 正在考虑的flag
|
||||
|
||||
|
@ -73,17 +73,19 @@ MOD 服务端
|
||||
## 直接下载
|
||||
|
||||
:::warning
|
||||
|
||||
此处下载链接可能不是最新版,如需下载最新版请跳转至 [手动下载](#%E6%89%8B%E5%8A%A8%E4%B8%8B%E8%BD%BD)
|
||||
|
||||
:::
|
||||
|
||||
<!--markdownlint-disable line-length-->
|
||||
|
||||
| Java 版本 | 下载链接 |
|
||||
|---------|----------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| Java 8 | [Dragonwell 8](https://dragonwell.oss-cn-shanghai.aliyuncs.com/8.19.20/Alibaba_Dragonwell_Extended_8.19.20_x64_windows.zip) |
|
||||
| Java 11 | [Dragonwell 11](https://dragonwell.oss-cn-shanghai.aliyuncs.com/11.0.23.20.9/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_windows.zip) |
|
||||
| Java 17 | [Azul Zulu](https://www.azul.com/core-post-download/?endpoint=zulu&uuid=e5cf71d2-4ea2-4de7-b9e0-aaea20374fe8) |
|
||||
| Java 21 | [GraalVM EE](https://download.oracle.com/graalvm/21/latest/graalvm-jdk-21_windows-x64_bin.zip) |
|
||||
| Java 版本 | 下载链接 |
|
||||
|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| Java 8 | [Dragonwell](https://dragonwell.oss-cn-shanghai.aliyuncs.com/8.19.20/Alibaba_Dragonwell_Extended_8.19.20_x64_windows.zip) |
|
||||
| Java 11 | [Dragonwell](https://dragonwell.oss-cn-shanghai.aliyuncs.com/11.0.23.20.9/Alibaba_Dragonwell_Extended_11.0.23.20.9_x64_windows.zip) |
|
||||
| Java 17 | [GraalVM](https://download.oracle.com/graalvm/17/latest/graalvm-jdk-17_windows-x64_bin.zip) [Zulu](https://cdn.azul.com/zulu/bin/zulu21.36.17-ca-jdk21.0.4-win_x64.zip) |
|
||||
| Java 21 | [GraalVM](https://download.oracle.com/graalvm/21/latest/graalvm-jdk-21_windows-x64_bin.zip) [Zulu](https://cdn.azul.com/zulu/bin/zulu17.52.17-ca-jdk17.0.12-win_x64.zip) |
|
||||
|
||||
<!--markdownlint-enable line-length-->
|
||||
|
||||
|
@ -17,6 +17,7 @@
|
||||
"write-heading-ids": "docusaurus write-heading-ids"
|
||||
},
|
||||
"dependencies": {
|
||||
"@ant-design/icons": "^5.5.1",
|
||||
"@docusaurus/core": "3.5.2",
|
||||
"@docusaurus/plugin-content-docs": "3.5.2",
|
||||
"@docusaurus/plugin-debug": "3.5.2",
|
||||
@ -26,6 +27,7 @@
|
||||
"@docusaurus/theme-mermaid": "3.5.2",
|
||||
"@docusaurus/theme-search-algolia": "3.5.2",
|
||||
"@mdx-js/react": "3.0.1",
|
||||
"antd": "^5.21.2",
|
||||
"clsx": "2.1.1",
|
||||
"prism-react-renderer": "^2.3.1",
|
||||
"react": "18.3.1",
|
||||
|
90
src/theme/DocItem/Layout/index.tsx
Normal file
90
src/theme/DocItem/Layout/index.tsx
Normal file
@ -0,0 +1,90 @@
|
||||
import React from 'react';
|
||||
import clsx from 'clsx';
|
||||
import {useWindowSize} from '@docusaurus/theme-common';
|
||||
import {useDoc} from '@docusaurus/plugin-content-docs/client';
|
||||
import DocItemPaginator from '@theme/DocItem/Paginator';
|
||||
import DocVersionBanner from '@theme/DocVersionBanner';
|
||||
import DocVersionBadge from '@theme/DocVersionBadge';
|
||||
import DocItemFooter from '@theme/DocItem/Footer';
|
||||
import DocItemTOCMobile from '@theme/DocItem/TOC/Mobile';
|
||||
import DocItemTOCDesktop from '@theme/DocItem/TOC/Desktop';
|
||||
import DocItemContent from '@theme/DocItem/Content';
|
||||
import DocBreadcrumbs from '@theme/DocBreadcrumbs';
|
||||
import ContentVisibility from '@theme/ContentVisibility';
|
||||
import type {Props} from '@theme/DocItem/Layout';
|
||||
import { FloatButton, Modal } from 'antd';
|
||||
import { FilePdfOutlined, PrinterOutlined } from '@ant-design/icons';
|
||||
|
||||
|
||||
import styles from './styles.module.css';
|
||||
|
||||
/**
|
||||
* Decide if the toc should be rendered, on mobile or desktop viewports
|
||||
*/
|
||||
function useDocTOC() {
|
||||
const {frontMatter, toc} = useDoc();
|
||||
const windowSize = useWindowSize();
|
||||
|
||||
const hidden = frontMatter.hide_table_of_contents;
|
||||
const canRender = !hidden && toc.length > 0;
|
||||
|
||||
const mobile = canRender ? <DocItemTOCMobile /> : undefined;
|
||||
|
||||
const desktop =
|
||||
canRender && (windowSize === 'desktop' || windowSize === 'ssr') ? (
|
||||
<DocItemTOCDesktop />
|
||||
) : undefined;
|
||||
|
||||
return {
|
||||
hidden,
|
||||
mobile,
|
||||
desktop,
|
||||
};
|
||||
}
|
||||
|
||||
export default function DocItemLayout({children}: Props): JSX.Element {
|
||||
const docTOC = useDocTOC();
|
||||
const {metadata} = useDoc();
|
||||
const downloadPDF = () => {
|
||||
Modal.info({
|
||||
title: '下载PDF',
|
||||
width: 500,
|
||||
content: (
|
||||
<div>
|
||||
<p>目前无法借助插件实现直接下载为PDF的功能,需要在弹出的打印窗口中,将目标打印机设置为"另存为PDF"(不同浏览器选项可能不同),通过打印功能来实现PDF下载</p>
|
||||
<p>点击“确定”,将弹出打印对话框。</p>
|
||||
</div>
|
||||
),
|
||||
onOk() {
|
||||
setTimeout(()=>window.print(), 1000);
|
||||
},
|
||||
})
|
||||
};
|
||||
const printArticle = () => {
|
||||
window.print();
|
||||
};
|
||||
return (
|
||||
<div className="row">
|
||||
<div className={clsx('col', !docTOC.hidden && styles.docItemCol)}>
|
||||
<ContentVisibility metadata={metadata} />
|
||||
<DocVersionBanner />
|
||||
<div className={styles.docItemContainer}>
|
||||
<article>
|
||||
<DocBreadcrumbs />
|
||||
<DocVersionBadge />
|
||||
{docTOC.mobile}
|
||||
<DocItemContent>{children}</DocItemContent>
|
||||
<DocItemFooter />
|
||||
</article>
|
||||
<DocItemPaginator />
|
||||
</div>
|
||||
</div>
|
||||
{docTOC.desktop && <div className="col col--3">{docTOC.desktop}</div>}
|
||||
<FloatButton.Group shape="circle" style={{right: 24}} className="article-float-buttons">
|
||||
<FloatButton icon={<PrinterOutlined/>} title="打印文档" onClick={printArticle}/>
|
||||
<FloatButton icon={<FilePdfOutlined/>} title="下载PDF" onClick={downloadPDF}/>
|
||||
<FloatButton.BackTop visibilityHeight={0}/>
|
||||
</FloatButton.Group>
|
||||
</div>
|
||||
);
|
||||
}
|
10
src/theme/DocItem/Layout/styles.module.css
Normal file
10
src/theme/DocItem/Layout/styles.module.css
Normal file
@ -0,0 +1,10 @@
|
||||
.docItemContainer header + *,
|
||||
.docItemContainer article > *:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
@media (min-width: 997px) {
|
||||
.docItemCol {
|
||||
max-width: 75% !important;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user