research-copilot 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +190 -0
- package/app/build/icon.icns +0 -0
- package/app/build/icon.ico +0 -0
- package/app/build/icon.png +0 -0
- package/app/out/main/index.mjs +6719 -0
- package/app/out/preload/index.js +141 -0
- package/app/out/renderer/assets/Inter-Variable-Latin-8kRkwJBP.woff2 +0 -0
- package/app/out/renderer/assets/Inter-Variable-LatinExt-B_-bZUTo.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/app/out/renderer/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/app/out/renderer/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/app/out/renderer/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/app/out/renderer/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/app/out/renderer/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/app/out/renderer/assets/MilkdownMarkdownEditor-bLPxrCVb.js +89821 -0
- package/app/out/renderer/assets/MilkdownMarkdownEditor-tTNRIB2K.css +2555 -0
- package/app/out/renderer/assets/Tableau10-BqnYsPR6.js +9 -0
- package/app/out/renderer/assets/apl-fqmucPXA.js +140 -0
- package/app/out/renderer/assets/arc-J47ePHZ2.js +132 -0
- package/app/out/renderer/assets/array-DgktLKBx.js +6 -0
- package/app/out/renderer/assets/asciiarmor-DucZyvP0.js +56 -0
- package/app/out/renderer/assets/asn1-BnOEsgAm.js +144 -0
- package/app/out/renderer/assets/asterisk-QAlztEwS.js +345 -0
- package/app/out/renderer/assets/blockDiagram-c4efeb88-5uRQXgQJ.js +1817 -0
- package/app/out/renderer/assets/brainfuck-DZVCuF_t.js +53 -0
- package/app/out/renderer/assets/c4Diagram-c83219d4-C4iCTPEL.js +2464 -0
- package/app/out/renderer/assets/channel-ZAmhHE3g.js +7 -0
- package/app/out/renderer/assets/classDiagram-beda092f-7NOZxq_W.js +357 -0
- package/app/out/renderer/assets/classDiagram-v2-2358418a-5fPT-cUH.js +291 -0
- package/app/out/renderer/assets/clike-xqXYL6ge.js +805 -0
- package/app/out/renderer/assets/clojure-BhXMqnxz.js +849 -0
- package/app/out/renderer/assets/clone-CsnzsYXQ.js +8 -0
- package/app/out/renderer/assets/cmake-BGaNd9E7.js +71 -0
- package/app/out/renderer/assets/cobol-4yqQntpt.js +120 -0
- package/app/out/renderer/assets/coffeescript-D2dXvhEc.js +308 -0
- package/app/out/renderer/assets/commonlisp-CF_VNHQR.js +130 -0
- package/app/out/renderer/assets/createText-1719965b-Cji7KN4K.js +4904 -0
- package/app/out/renderer/assets/crystal-DyuLTqLs.js +398 -0
- package/app/out/renderer/assets/css-c-jst79C.js +1783 -0
- package/app/out/renderer/assets/cypher-Dlu_3r4V.js +121 -0
- package/app/out/renderer/assets/d-UURgV0Ux.js +179 -0
- package/app/out/renderer/assets/diff-B_Bi2Crb.js +25 -0
- package/app/out/renderer/assets/dockerfile-Bvk733Ga.js +201 -0
- package/app/out/renderer/assets/dtd-Dy74G54E.js +114 -0
- package/app/out/renderer/assets/dylan-TSb-Nfix.js +314 -0
- package/app/out/renderer/assets/ebnf-DAomQUbD.js +139 -0
- package/app/out/renderer/assets/ecl-B59qGGVg.js +178 -0
- package/app/out/renderer/assets/edges-96097737-CD0EvAZQ.js +1844 -0
- package/app/out/renderer/assets/eiffel-Dze7nlu3.js +134 -0
- package/app/out/renderer/assets/elm-DG7jkhNZ.js +176 -0
- package/app/out/renderer/assets/erDiagram-0228fc6a-DRYXBpi7.js +1321 -0
- package/app/out/renderer/assets/erlang-BO6gOnGA.js +674 -0
- package/app/out/renderer/assets/factor-CMxFHDqz.js +65 -0
- package/app/out/renderer/assets/fcl-CDDUNjTj.js +141 -0
- package/app/out/renderer/assets/flowDb-c6c81e3f-CuoIN-Cy.js +1713 -0
- package/app/out/renderer/assets/flowDiagram-50d868cf-CPWPLOml.js +1272 -0
- package/app/out/renderer/assets/flowDiagram-v2-4f6560a1-C_R12s4S.js +33 -0
- package/app/out/renderer/assets/flowchart-elk-definition-6af322e1-BdKUSFpi.js +92921 -0
- package/app/out/renderer/assets/forth-B9D2JCeE.js +116 -0
- package/app/out/renderer/assets/fortran-CAG2BFbe.js +467 -0
- package/app/out/renderer/assets/ganttDiagram-a2739b55-ygqT5HlG.js +3399 -0
- package/app/out/renderer/assets/gas-d3KEcW3x.js +294 -0
- package/app/out/renderer/assets/gherkin-DhZlEZiy.js +115 -0
- package/app/out/renderer/assets/gitGraphDiagram-82fe8481-D97GT4iA.js +1791 -0
- package/app/out/renderer/assets/graph-DpC13d95.js +1237 -0
- package/app/out/renderer/assets/groovy-CpwJiBl7.js +223 -0
- package/app/out/renderer/assets/haskell-BlGBCCe3.js +459 -0
- package/app/out/renderer/assets/haxe-7MlzfeYV.js +514 -0
- package/app/out/renderer/assets/http-BqypyemW.js +79 -0
- package/app/out/renderer/assets/idl-4HIGJlDI.js +985 -0
- package/app/out/renderer/assets/index-4-ziknCv.js +292 -0
- package/app/out/renderer/assets/index-5325376f-Bbs7Fbqr.js +663 -0
- package/app/out/renderer/assets/index-B2jip-rk.js +2489 -0
- package/app/out/renderer/assets/index-BKTVfokE.js +312 -0
- package/app/out/renderer/assets/index-BiJbFgVG.js +118 -0
- package/app/out/renderer/assets/index-Bn433Fat.js +83 -0
- package/app/out/renderer/assets/index-BqDyyRCx.js +39679 -0
- package/app/out/renderer/assets/index-BzFMeMPn.js +158 -0
- package/app/out/renderer/assets/index-C-_uCjZJ.css +2701 -0
- package/app/out/renderer/assets/index-C1ithNW1.js +1765 -0
- package/app/out/renderer/assets/index-CAJkRYkO.js +407 -0
- package/app/out/renderer/assets/index-CleO0-yj.js +690 -0
- package/app/out/renderer/assets/index-Cq4MH3sY.js +1020 -0
- package/app/out/renderer/assets/index-CtA0Xj22.js +705 -0
- package/app/out/renderer/assets/index-CvAZkqBZ.js +83 -0
- package/app/out/renderer/assets/index-D3UDN-5c.js +152 -0
- package/app/out/renderer/assets/index-D4F9R5ao.js +179 -0
- package/app/out/renderer/assets/index-D6RguhZ5.js +328 -0
- package/app/out/renderer/assets/index-DnEowqXv.js +386 -0
- package/app/out/renderer/assets/index-K8c8Mqdy.js +98 -0
- package/app/out/renderer/assets/index-Kh14gO6K.js +62 -0
- package/app/out/renderer/assets/index-WFd2jRnA.js +333 -0
- package/app/out/renderer/assets/index-WgMfkRFp.js +313 -0
- package/app/out/renderer/assets/index-Y4lKyF6t.js +1042 -0
- package/app/out/renderer/assets/index-fx307_f1.js +643 -0
- package/app/out/renderer/assets/infoDiagram-8eee0895-ptaVSwzq.js +511 -0
- package/app/out/renderer/assets/init-ZxktEp_H.js +16 -0
- package/app/out/renderer/assets/javascript-C3MnDRiU.js +994 -0
- package/app/out/renderer/assets/journeyDiagram-c64418c1-aloEGOQp.js +1184 -0
- package/app/out/renderer/assets/julia-Bs6JJhYG.js +407 -0
- package/app/out/renderer/assets/layout-ZeuHE_aY.js +2217 -0
- package/app/out/renderer/assets/line-CAgaGl-S.js +45 -0
- package/app/out/renderer/assets/linear-DIg7lTe1.js +539 -0
- package/app/out/renderer/assets/livescript-DmzgM3Yt.js +296 -0
- package/app/out/renderer/assets/lua-8cJgIlqe.js +256 -0
- package/app/out/renderer/assets/mathematica-DNLOL9PQ.js +110 -0
- package/app/out/renderer/assets/mbox-Ga7d4MMN.js +117 -0
- package/app/out/renderer/assets/mindmap-definition-8da855dc-B8XVoUxz.js +36054 -0
- package/app/out/renderer/assets/mirc-Dma3B8rS.js +107 -0
- package/app/out/renderer/assets/mllike-DHn7xckP.js +334 -0
- package/app/out/renderer/assets/modelica-0d55jYY0.js +147 -0
- package/app/out/renderer/assets/mscgen-DdqZYINH.js +135 -0
- package/app/out/renderer/assets/mumps-Btr8VblO.js +93 -0
- package/app/out/renderer/assets/nginx-DTDtBDVN.js +141 -0
- package/app/out/renderer/assets/nsis-3zG7tgur.js +62 -0
- package/app/out/renderer/assets/ntriples-CvgOYMpL.js +153 -0
- package/app/out/renderer/assets/octave-DYBj3-tl.js +200 -0
- package/app/out/renderer/assets/ordinal-DSZU4PqD.js +76 -0
- package/app/out/renderer/assets/oz-R_e8WMIi.js +231 -0
- package/app/out/renderer/assets/pascal-GD8iposT.js +105 -0
- package/app/out/renderer/assets/path-Cp2qmpkd.js +109 -0
- package/app/out/renderer/assets/perl-DL9mHpoi.js +1105 -0
- package/app/out/renderer/assets/pieDiagram-a8764435-DlwoeBU2.js +770 -0
- package/app/out/renderer/assets/pig-C_4T4YIV.js +101 -0
- package/app/out/renderer/assets/powershell-B0suO7Vd.js +328 -0
- package/app/out/renderer/assets/properties-BR-vP1aU.js +58 -0
- package/app/out/renderer/assets/protobuf-BxgpyhoW.js +77 -0
- package/app/out/renderer/assets/pug-By0kVCfm.js +405 -0
- package/app/out/renderer/assets/puppet-Bdao66PW.js +137 -0
- package/app/out/renderer/assets/python-CvWbmiX4.js +427 -0
- package/app/out/renderer/assets/q-CrbCVq4a.js +131 -0
- package/app/out/renderer/assets/quadrantDiagram-1e28029f-BaSi1XB4.js +1200 -0
- package/app/out/renderer/assets/r-V7nswm59.js +170 -0
- package/app/out/renderer/assets/requirementDiagram-08caed73-D3EFyegZ.js +1092 -0
- package/app/out/renderer/assets/rpm-C-DLY-If.js +109 -0
- package/app/out/renderer/assets/ruby-JDKLJNK0.js +330 -0
- package/app/out/renderer/assets/sankeyDiagram-a04cb91d-Cv44AsnM.js +1174 -0
- package/app/out/renderer/assets/sas-D2UG-yhZ.js +207 -0
- package/app/out/renderer/assets/scheme-BKzrkGJD.js +222 -0
- package/app/out/renderer/assets/sequenceDiagram-c5b8d532-CuUBu-x4.js +3337 -0
- package/app/out/renderer/assets/shell-BlsXDxCn.js +222 -0
- package/app/out/renderer/assets/sieve-CjwBwOY5.js +135 -0
- package/app/out/renderer/assets/simple-mode-DMneyfDu.js +130 -0
- package/app/out/renderer/assets/smalltalk-BOIGQuhN.js +121 -0
- package/app/out/renderer/assets/solr-CwD7U71z.js +69 -0
- package/app/out/renderer/assets/sparql-DYskk2vE.js +249 -0
- package/app/out/renderer/assets/spreadsheet-Bgtt3oLP.js +87 -0
- package/app/out/renderer/assets/sql-BSrOzCRI.js +354 -0
- package/app/out/renderer/assets/stateDiagram-1ecb1508-BOU34Zp4.js +454 -0
- package/app/out/renderer/assets/stateDiagram-v2-c2b004d7-BgRoffou.js +326 -0
- package/app/out/renderer/assets/stex-B6LNC55o.js +231 -0
- package/app/out/renderer/assets/styles-b4e223ce-BMr9TPuj.js +1483 -0
- package/app/out/renderer/assets/styles-ca3715f6-DgbNw99p.js +1363 -0
- package/app/out/renderer/assets/styles-d45a18b0-DtRYKYKf.js +574 -0
- package/app/out/renderer/assets/stylus-BkS-boTH.js +565 -0
- package/app/out/renderer/assets/svgDrawCommon-b86b1483-Bein03PD.js +100 -0
- package/app/out/renderer/assets/swift-FRZi1uvB.js +291 -0
- package/app/out/renderer/assets/tcl-CUcaCdmq.js +114 -0
- package/app/out/renderer/assets/textile-BnFpjsrl.js +414 -0
- package/app/out/renderer/assets/tiddlywiki-CjprD-Qp.js +218 -0
- package/app/out/renderer/assets/tiki-B4EPSQ1G.js +265 -0
- package/app/out/renderer/assets/timeline-definition-faaaa080-BlWpLE_4.js +1212 -0
- package/app/out/renderer/assets/toml-BOuWGMcf.js +76 -0
- package/app/out/renderer/assets/troff-E1bJ0PPL.js +61 -0
- package/app/out/renderer/assets/ttcn-cfg-Dc39-fIP.js +133 -0
- package/app/out/renderer/assets/ttcn-tKd4HLu4.js +192 -0
- package/app/out/renderer/assets/turtle-Dq7-1WAf.js +124 -0
- package/app/out/renderer/assets/vb-Dp90gtsv.js +196 -0
- package/app/out/renderer/assets/vbscript-CI6_mxxU.js +479 -0
- package/app/out/renderer/assets/velocity-BwIZK1TH.js +149 -0
- package/app/out/renderer/assets/verilog-DDCYnHN8.js +430 -0
- package/app/out/renderer/assets/vhdl-DCkMIyT9.js +158 -0
- package/app/out/renderer/assets/webidl-BTLTThCm.js +204 -0
- package/app/out/renderer/assets/xquery-BgiOC5Ce.js +525 -0
- package/app/out/renderer/assets/xychartDiagram-f5964ef8-Bhga-YXm.js +1799 -0
- package/app/out/renderer/assets/yacas-b5lAVEIl.js +130 -0
- package/app/out/renderer/assets/z80-BZV19vqv.js +93 -0
- package/app/out/renderer/index.html +13 -0
- package/app/out/skills/community-builtin/README.md +29 -0
- package/app/out/skills/community-builtin/document-docx/SKILL.md +44 -0
- package/app/out/skills/community-builtin/document-docx/scripts/docx-to-markdown.sh +20 -0
- package/app/out/skills/community-builtin/document-docx/scripts/extract-docx-text.sh +28 -0
- package/app/out/skills/community-builtin/document-docx/scripts/init-docx-template.sh +32 -0
- package/app/out/skills/community-builtin/document-docx/scripts/setup-docx-tools.sh +10 -0
- package/app/out/skills/community-builtin/markitdown/SKILL.md +105 -0
- package/app/out/skills/community-builtin/markitdown/scripts/batch-convert.sh +40 -0
- package/app/out/skills/community-builtin/markitdown/scripts/convert-file.sh +24 -0
- package/app/out/skills/community-builtin/markitdown/scripts/setup-markitdown.sh +10 -0
- package/app/out/skills/community-builtin/repo-quick-audit/SKILL.md +27 -0
- package/app/out/skills/community-builtin/repo-quick-audit/scripts/audit-basics.sh +19 -0
- package/app/out/skills/research-pilot-default-project-skills/README.md +23 -0
- package/app/out/skills/research-pilot-default-project-skills/citation-management/SKILL.md +39 -0
- package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/doi-to-bibtex.sh +25 -0
- package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/normalize-bibtex-keys.sh +51 -0
- package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/setup-citation-tools.sh +10 -0
- package/app/out/skills/research-pilot-default-project-skills/citation-management/scripts/validate-bib.sh +31 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/SKILL.md +34 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/api_reference.md +412 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/common_issues.md +563 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/plot_types.md +476 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/styling_guide.md +589 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/references/subagent_quickstart.md +30 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/scripts/plot_template.py +401 -0
- package/app/out/skills/research-pilot-default-project-skills/matplotlib/scripts/style_configurator.py +409 -0
- package/app/out/skills/research-pilot-default-project-skills/research-grants/SKILL.md +38 -0
- package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/check-grant-compliance.sh +40 -0
- package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/grant-summary-card.sh +32 -0
- package/app/out/skills/research-pilot-default-project-skills/research-grants/scripts/init-grant-structure.sh +70 -0
- package/app/package.json +77 -0
- package/bin/cli.mjs +56 -0
- package/lib/README.md +145 -0
- package/lib/skills/_generated.ts +13 -0
- package/lib/skills/builtin/brainstorming-research-ideas/SKILL.md +280 -0
- package/lib/skills/builtin/coding/SKILL.md +114 -0
- package/lib/skills/builtin/creative-thinking-for-research/SKILL.md +273 -0
- package/lib/skills/builtin/matplotlib/SKILL.md +361 -0
- package/lib/skills/builtin/matplotlib/references/api_reference.md +412 -0
- package/lib/skills/builtin/matplotlib/references/common_issues.md +563 -0
- package/lib/skills/builtin/matplotlib/references/plot_types.md +476 -0
- package/lib/skills/builtin/matplotlib/references/styling_guide.md +589 -0
- package/lib/skills/builtin/matplotlib/scripts/plot_template.py +401 -0
- package/lib/skills/builtin/matplotlib/scripts/style_configurator.py +409 -0
- package/lib/skills/builtin/paper-writing/SKILL.md +554 -0
- package/lib/skills/builtin/paper-writing/references/checklists.md +524 -0
- package/lib/skills/builtin/paper-writing/references/citation-workflow.md +562 -0
- package/lib/skills/builtin/paper-writing/references/reviewer-guidelines.md +462 -0
- package/lib/skills/builtin/paper-writing/references/sources.md +189 -0
- package/lib/skills/builtin/paper-writing/references/systems-conferences.md +260 -0
- package/lib/skills/builtin/paper-writing/references/writing-guide.md +476 -0
- package/lib/skills/builtin/paper-writing/templates/README.md +408 -0
- package/lib/skills/builtin/paper-writing/templates/aaai2026/README.md +534 -0
- package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026-unified-supp.tex +144 -0
- package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026-unified-template.tex +952 -0
- package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.bib +111 -0
- package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.bst +1493 -0
- package/lib/skills/builtin/paper-writing/templates/aaai2026/aaai2026.sty +315 -0
- package/lib/skills/builtin/paper-writing/templates/acl/README.md +50 -0
- package/lib/skills/builtin/paper-writing/templates/acl/acl.sty +312 -0
- package/lib/skills/builtin/paper-writing/templates/acl/acl_latex.tex +377 -0
- package/lib/skills/builtin/paper-writing/templates/acl/acl_lualatex.tex +101 -0
- package/lib/skills/builtin/paper-writing/templates/acl/acl_natbib.bst +1940 -0
- package/lib/skills/builtin/paper-writing/templates/acl/anthology.bib.txt +26 -0
- package/lib/skills/builtin/paper-writing/templates/acl/custom.bib +70 -0
- package/lib/skills/builtin/paper-writing/templates/acl/formatting.md +326 -0
- package/lib/skills/builtin/paper-writing/templates/asplos2027/main.tex +459 -0
- package/lib/skills/builtin/paper-writing/templates/asplos2027/references.bib +135 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/README.md +3 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.bib +11 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.bst +1440 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.pdf +0 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.sty +218 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/colm2025_conference.tex +305 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/fancyhdr.sty +485 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/math_commands.tex +508 -0
- package/lib/skills/builtin/paper-writing/templates/colm2025/natbib.sty +1246 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/fancyhdr.sty +485 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.bib +24 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.bst +1440 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.pdf +0 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.sty +246 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/iclr2026_conference.tex +414 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/math_commands.tex +508 -0
- package/lib/skills/builtin/paper-writing/templates/iclr2026/natbib.sty +1246 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/algorithm.sty +79 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/algorithmic.sty +201 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.bib +75 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.pdf +0 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/example_paper.tex +662 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/fancyhdr.sty +864 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/icml2026.bst +1443 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/icml2026.sty +767 -0
- package/lib/skills/builtin/paper-writing/templates/icml2026/icml_numpapers.pdf +0 -0
- package/lib/skills/builtin/paper-writing/templates/neurips2025/Makefile +36 -0
- package/lib/skills/builtin/paper-writing/templates/neurips2025/extra_pkgs.tex +53 -0
- package/lib/skills/builtin/paper-writing/templates/neurips2025/main.tex +38 -0
- package/lib/skills/builtin/paper-writing/templates/neurips2025/neurips.sty +382 -0
- package/lib/skills/builtin/paper-writing/templates/nsdi2027/main.tex +426 -0
- package/lib/skills/builtin/paper-writing/templates/nsdi2027/references.bib +151 -0
- package/lib/skills/builtin/paper-writing/templates/nsdi2027/usenix-2020-09.sty +83 -0
- package/lib/skills/builtin/paper-writing/templates/osdi2026/main.tex +429 -0
- package/lib/skills/builtin/paper-writing/templates/osdi2026/references.bib +150 -0
- package/lib/skills/builtin/paper-writing/templates/osdi2026/usenix-2020-09.sty +83 -0
- package/lib/skills/builtin/paper-writing/templates/sosp2026/main.tex +532 -0
- package/lib/skills/builtin/paper-writing/templates/sosp2026/references.bib +148 -0
- package/lib/skills/builtin/research-grants/SKILL.md +958 -0
- package/lib/skills/builtin/research-grants/assets/budget_justification_template.md +453 -0
- package/lib/skills/builtin/research-grants/assets/nih_specific_aims_template.md +166 -0
- package/lib/skills/builtin/research-grants/assets/nsf_project_summary_template.md +92 -0
- package/lib/skills/builtin/research-grants/references/README.md +285 -0
- package/lib/skills/builtin/research-grants/references/broader_impacts.md +392 -0
- package/lib/skills/builtin/research-grants/references/darpa_guidelines.md +636 -0
- package/lib/skills/builtin/research-grants/references/doe_guidelines.md +586 -0
- package/lib/skills/builtin/research-grants/references/nih_guidelines.md +851 -0
- package/lib/skills/builtin/research-grants/references/nsf_guidelines.md +570 -0
- package/lib/skills/builtin/research-grants/references/nstc_guidelines.md +733 -0
- package/lib/skills/builtin/research-grants/references/specific_aims_guide.md +458 -0
- package/lib/skills/builtin/rewrite-humanize/SKILL.md +116 -0
- package/lib/skills/builtin/rewrite-humanize/references/cs-venue-tone.md +57 -0
- package/lib/skills/builtin/rewrite-humanize/references/lexicon.md +50 -0
- package/lib/skills/builtin/scholar-evaluation/SKILL.md +300 -0
- package/lib/skills/builtin/scholar-evaluation/references/evaluation_framework.md +663 -0
- package/lib/skills/builtin/scholar-evaluation/scripts/calculate_scores.py +379 -0
- package/lib/skills/builtin/scientific-schematics/SKILL.md +603 -0
- package/lib/skills/builtin/scientific-schematics/references/QUICK_REFERENCE.md +182 -0
- package/lib/skills/builtin/scientific-schematics/references/README.md +292 -0
- package/lib/skills/builtin/scientific-schematics/references/best_practices.md +560 -0
- package/lib/skills/builtin/scientific-schematics/scripts/__pycache__/generate_schematic.cpython-312.pyc +0 -0
- package/lib/skills/builtin/scientific-schematics/scripts/__pycache__/generate_schematic_ai.cpython-312.pyc +0 -0
- package/lib/skills/builtin/scientific-schematics/scripts/example_usage.sh +85 -0
- package/lib/skills/builtin/scientific-schematics/scripts/generate_schematic.py +141 -0
- package/lib/skills/builtin/scientific-schematics/scripts/generate_schematic_ai.py +910 -0
- package/lib/skills/builtin/scientific-visualization/SKILL.md +749 -0
- package/lib/skills/builtin/scientific-visualization/assets/color_palettes.py +197 -0
- package/lib/skills/builtin/scientific-visualization/assets/nature.mplstyle +63 -0
- package/lib/skills/builtin/scientific-visualization/assets/presentation.mplstyle +61 -0
- package/lib/skills/builtin/scientific-visualization/assets/publication.mplstyle +68 -0
- package/lib/skills/builtin/scientific-visualization/references/color_palettes.md +348 -0
- package/lib/skills/builtin/scientific-visualization/references/journal_requirements.md +320 -0
- package/lib/skills/builtin/scientific-visualization/references/matplotlib_examples.md +620 -0
- package/lib/skills/builtin/scientific-visualization/references/publication_guidelines.md +205 -0
- package/lib/skills/builtin/scientific-visualization/scripts/figure_export.py +343 -0
- package/lib/skills/builtin/scientific-visualization/scripts/style_presets.py +416 -0
- package/lib/skills/builtin/scientific-writing/SKILL.md +745 -0
- package/lib/skills/builtin/scientific-writing/assets/REPORT_FORMATTING_GUIDE.md +574 -0
- package/lib/skills/builtin/scientific-writing/assets/scientific_report.sty +606 -0
- package/lib/skills/builtin/scientific-writing/assets/scientific_report_template.tex +449 -0
- package/lib/skills/builtin/scientific-writing/references/citation_styles.md +720 -0
- package/lib/skills/builtin/scientific-writing/references/figures_tables.md +806 -0
- package/lib/skills/builtin/scientific-writing/references/imrad_structure.md +686 -0
- package/lib/skills/builtin/scientific-writing/references/professional_report_formatting.md +664 -0
- package/lib/skills/builtin/scientific-writing/references/reporting_guidelines.md +748 -0
- package/lib/skills/builtin/scientific-writing/references/writing_principles.md +824 -0
- package/lib/skills/builtin/seaborn/SKILL.md +674 -0
- package/lib/skills/builtin/seaborn/references/examples.md +822 -0
- package/lib/skills/builtin/seaborn/references/function_reference.md +770 -0
- package/lib/skills/builtin/seaborn/references/objects_interface.md +964 -0
- package/lib/skills/data-analysis/SKILL.md +285 -0
- package/lib/skills/generate-skill-content.mjs +58 -0
- package/lib/skills/index.ts +34 -0
- package/lib/skills/loader.ts +452 -0
- package/package.json +62 -0
|
@@ -0,0 +1,459 @@
|
|
|
1
|
+
%%%%%%%% ASPLOS 2027 PAPER TEMPLATE %%%%%%%%%%%%%%%%%
|
|
2
|
+
%
|
|
3
|
+
% ACM International Conference on Architectural Support for
|
|
4
|
+
% Programming Languages and Operating Systems
|
|
5
|
+
%
|
|
6
|
+
% Format: ACM SIGPLAN, <= 12 pages (excluding references), 10pt, two-column
|
|
7
|
+
% Uses acmart.cls with sigplan option
|
|
8
|
+
%
|
|
9
|
+
% Official CFP: https://www.asplos-conference.org/asplos2026/call-for-papers-asplos27/
|
|
10
|
+
% ACM Template: https://www.acm.org/publications/proceedings-template
|
|
11
|
+
%
|
|
12
|
+
% IMPORTANT NOTES:
|
|
13
|
+
% - RAPID REVIEW ROUND: Reviewers read ONLY the first 2 pages!
|
|
14
|
+
% --> First 2 pages MUST be self-contained
|
|
15
|
+
% --> Clearly state problem, approach, contribution in first 2 pages
|
|
16
|
+
% --> Do NOT rely on content after page 2 for rapid review
|
|
17
|
+
% - Must advance Architecture, PL, and/or OS research
|
|
18
|
+
% --> NOT just using arch/PL/OS to advance another domain
|
|
19
|
+
% - Two cycles: April 2026 and September 2026
|
|
20
|
+
% - Max 4 submissions per author per cycle
|
|
21
|
+
% - Major Revision decision available
|
|
22
|
+
% - Double-blind review
|
|
23
|
+
%
|
|
24
|
+
% RAPID REVIEW TIPS (critical for acceptance):
|
|
25
|
+
% Page 1: Problem motivation + why it matters to arch/PL/OS
|
|
26
|
+
% Page 2: Approach overview + key results preview + contribution list
|
|
27
|
+
% If reviewers cannot determine your contribution to arch/PL/OS
|
|
28
|
+
% from the first 2 pages, your paper WILL be rejected in rapid review.
|
|
29
|
+
|
|
30
|
+
\documentclass[sigplan,10pt]{acmart}
|
|
31
|
+
|
|
32
|
+
% Remove copyright/permission footer for submission
|
|
33
|
+
\renewcommand\footnotetextcopyrightpermission[1]{}
|
|
34
|
+
\settopmatter{printfolios=true}
|
|
35
|
+
|
|
36
|
+
% Remove ACM reference format for submission
|
|
37
|
+
\setcopyright{none}
|
|
38
|
+
\renewcommand\acmConference[4]{}
|
|
39
|
+
\acmDOI{}
|
|
40
|
+
\acmISBN{}
|
|
41
|
+
|
|
42
|
+
% Recommended packages for architecture/systems papers
|
|
43
|
+
\usepackage{booktabs} % Professional tables
|
|
44
|
+
\usepackage{xspace}
|
|
45
|
+
\usepackage{subcaption} % Side-by-side figures
|
|
46
|
+
\usepackage{algorithm} % Algorithm environment
|
|
47
|
+
\usepackage{algorithmic} % Pseudocode formatting
|
|
48
|
+
\usepackage{listings} % Code listings (useful for ISA/compiler examples)
|
|
49
|
+
\usepackage[capitalize,noabbrev]{cleveref} % Smart cross-references
|
|
50
|
+
|
|
51
|
+
% Code listing style for architecture/compiler papers
|
|
52
|
+
\lstset{
|
|
53
|
+
basicstyle=\footnotesize\ttfamily,
|
|
54
|
+
numbers=left,
|
|
55
|
+
numberstyle=\tiny,
|
|
56
|
+
xleftmargin=2em,
|
|
57
|
+
breaklines=true,
|
|
58
|
+
tabsize=2,
|
|
59
|
+
showstringspaces=false,
|
|
60
|
+
frame=single,
|
|
61
|
+
captionpos=b,
|
|
62
|
+
morekeywords={load, store, fence, atomic, sync} % Add ISA keywords
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
% Custom commands -- replace \system with your anonymized name
|
|
66
|
+
\newcommand{\system}{SystemName\xspace}
|
|
67
|
+
\newcommand{\eg}{e.g.,\xspace}
|
|
68
|
+
\newcommand{\ie}{i.e.,\xspace}
|
|
69
|
+
\newcommand{\etal}{\textit{et al.}\xspace}
|
|
70
|
+
\newcommand{\para}[1]{\smallskip\noindent\textbf{#1.}}
|
|
71
|
+
\newcommand{\parait}[1]{\smallskip\noindent\textit{#1.}}
|
|
72
|
+
|
|
73
|
+
% Architecture-specific macros
|
|
74
|
+
\newcommand{\us}{\,$\mu$s\xspace}
|
|
75
|
+
\newcommand{\ns}{\,ns\xspace}
|
|
76
|
+
\newcommand{\GHz}{\,GHz\xspace}
|
|
77
|
+
\newcommand{\GB}{\,GB\xspace}
|
|
78
|
+
\newcommand{\MB}{\,MB\xspace}
|
|
79
|
+
\newcommand{\KB}{\,KB\xspace}
|
|
80
|
+
|
|
81
|
+
\begin{document}
|
|
82
|
+
|
|
83
|
+
\title{Your Paper Title Here}
|
|
84
|
+
|
|
85
|
+
% Anonymized for submission
|
|
86
|
+
\author{Paper \#XXX}
|
|
87
|
+
\affiliation{%
|
|
88
|
+
\institution{Anonymous}
|
|
89
|
+
\country{}}
|
|
90
|
+
|
|
91
|
+
% Camera-ready (uncomment and fill in):
|
|
92
|
+
% \author{Author One}
|
|
93
|
+
% \affiliation{%
|
|
94
|
+
% \institution{University/Company}
|
|
95
|
+
% \city{City}
|
|
96
|
+
% \country{Country}}
|
|
97
|
+
% \email{email@example.com}
|
|
98
|
+
%
|
|
99
|
+
% \author{Author Two}
|
|
100
|
+
% \affiliation{%
|
|
101
|
+
% \institution{University/Company}
|
|
102
|
+
% \city{City}
|
|
103
|
+
% \country{Country}}
|
|
104
|
+
% \email{email@example.com}
|
|
105
|
+
|
|
106
|
+
\begin{abstract}
|
|
107
|
+
% Guidelines for a strong ASPLOS abstract:
|
|
108
|
+
% - State what you built/discovered (the contribution)
|
|
109
|
+
% - Identify the arch/PL/OS challenge addressed
|
|
110
|
+
% - Describe your approach and key insight
|
|
111
|
+
% - Quantify improvement with concrete numbers
|
|
112
|
+
%
|
|
113
|
+
% Keep to 150--200 words. Remember: this is part of the first 2 pages!
|
|
114
|
+
|
|
115
|
+
We present \system, a [hardware/software/compiler technique] that [capability].
|
|
116
|
+
[Problem: why existing arch/PL/OS approaches fall short.]
|
|
117
|
+
Our key insight is that [observation about hardware-software interaction].
|
|
118
|
+
\system exploits this through [technique], achieving [X]$\times$ speedup
|
|
119
|
+
and [Y]\% energy reduction compared to [baseline] on [benchmarks].
|
|
120
|
+
\end{abstract}
|
|
121
|
+
|
|
122
|
+
\maketitle
|
|
123
|
+
\pagestyle{plain}
|
|
124
|
+
|
|
125
|
+
%----------------------------------------------------------------------
|
|
126
|
+
% ╔══════════════════════════════════════════════════════════════════════╗
|
|
127
|
+
% ║ PAGES 1--2 ARE CRITICAL FOR RAPID REVIEW! ║
|
|
128
|
+
% ║ Reviewers read ONLY the first 2 pages in the rapid review round. ║
|
|
129
|
+
% ║ These must: ║
|
|
130
|
+
% ║ 1. Clearly state the problem and why it matters ║
|
|
131
|
+
% ║ 2. Explain how this advances Architecture, PL, or OS ║
|
|
132
|
+
% ║ (NOT just using arch/PL/OS to advance another domain) ║
|
|
133
|
+
% ║ 3. Outline your approach and key contributions ║
|
|
134
|
+
% ║ 4. Preview your main results with numbers ║
|
|
135
|
+
% ╚══════════════════════════════════════════════════════════════════════╝
|
|
136
|
+
|
|
137
|
+
\section{Introduction}
|
|
138
|
+
\label{sec:intro}
|
|
139
|
+
|
|
140
|
+
% Page 1 should cover: problem motivation + why it matters to arch/PL/OS.
|
|
141
|
+
% Page 2 should cover: approach overview + contributions + results preview.
|
|
142
|
+
|
|
143
|
+
Modern [hardware/software] systems face [challenge] due to
|
|
144
|
+
[trend]~\cite{hennessy2019new}. While prior work has addressed
|
|
145
|
+
[related problem]~\cite{jouppi2017tpu}, [gap remains].
|
|
146
|
+
This paper addresses the [arch/PL/OS] challenge of [specific problem].
|
|
147
|
+
|
|
148
|
+
\para{Key Insight}
|
|
149
|
+
We observe that [insight about hardware-software interaction]. This
|
|
150
|
+
observation is supported by our analysis of [N] benchmarks on
|
|
151
|
+
[hardware platform] (\cref{sec:background}).
|
|
152
|
+
|
|
153
|
+
\para{Approach Overview}
|
|
154
|
+
\system addresses this through [technique]. Unlike [prior approach],
|
|
155
|
+
\system [key distinction], enabling [benefit].
|
|
156
|
+
|
|
157
|
+
We make the following contributions:
|
|
158
|
+
\begin{itemize}
|
|
159
|
+
\item We identify and characterize [problem] through analysis of
|
|
160
|
+
[benchmarks/hardware] (\cref{sec:background}).
|
|
161
|
+
\item We propose \system, a [technique] that [capability]
|
|
162
|
+
(\cref{sec:design}).
|
|
163
|
+
\item We implement \system in [context: compiler/hardware/OS] and
|
|
164
|
+
evaluate on [benchmarks] (\cref{sec:evaluation}).
|
|
165
|
+
\item We demonstrate [X]$\times$ [speedup/efficiency] improvement
|
|
166
|
+
over [state-of-the-art], with only [Y]\% area/power overhead.
|
|
167
|
+
\end{itemize}
|
|
168
|
+
|
|
169
|
+
% End of critical first 2 pages. Content below supports the claims above.
|
|
170
|
+
%----------------------------------------------------------------------
|
|
171
|
+
|
|
172
|
+
\section{Background and Motivation}
|
|
173
|
+
\label{sec:background}
|
|
174
|
+
|
|
175
|
+
\subsection{Hardware/Software Context}
|
|
176
|
+
|
|
177
|
+
Describe relevant architecture, PL, or OS
|
|
178
|
+
background~\cite{lattner2004llvm}.
|
|
179
|
+
|
|
180
|
+
\subsection{Characterization Study}
|
|
181
|
+
|
|
182
|
+
% Concrete measurements on real hardware strengthen motivation.
|
|
183
|
+
\Cref{fig:motivation} shows [measurement] across [benchmarks] on
|
|
184
|
+
[hardware platform].
|
|
185
|
+
|
|
186
|
+
\begin{figure}[t]
|
|
187
|
+
\centering
|
|
188
|
+
\fbox{\parbox{0.9\columnwidth}{\centering\vspace{3em}
|
|
189
|
+
\textit{Performance characterization: breakdown of execution time, \\
|
|
190
|
+
cache miss rates, or energy consumption across benchmarks}
|
|
191
|
+
\vspace{3em}}}
|
|
192
|
+
\caption{Characterization of [metric] across [N] benchmarks on
|
|
193
|
+
[hardware]. On average, [X]\% of [time/energy] is spent on
|
|
194
|
+
[bottleneck], motivating [your approach].}
|
|
195
|
+
\label{fig:motivation}
|
|
196
|
+
\end{figure}
|
|
197
|
+
|
|
198
|
+
\subsection{Opportunity Analysis}
|
|
199
|
+
|
|
200
|
+
Based on this characterization, we identify [N] key opportunities:
|
|
201
|
+
|
|
202
|
+
\para{Opportunity 1} [Description with concrete numbers.]
|
|
203
|
+
|
|
204
|
+
\para{Opportunity 2} [Description.] These opportunities motivate
|
|
205
|
+
the design of \system.
|
|
206
|
+
|
|
207
|
+
%----------------------------------------------------------------------
|
|
208
|
+
\section{Design}
|
|
209
|
+
\label{sec:design}
|
|
210
|
+
|
|
211
|
+
\Cref{fig:architecture} shows the overall architecture of \system.
|
|
212
|
+
|
|
213
|
+
\begin{figure*}[t]
|
|
214
|
+
\centering
|
|
215
|
+
\fbox{\parbox{0.9\textwidth}{\centering\vspace{4em}
|
|
216
|
+
\textit{System architecture: hardware blocks, compiler passes, \\
|
|
217
|
+
or OS mechanisms and their interactions}
|
|
218
|
+
\vspace{4em}}}
|
|
219
|
+
\caption{Architecture of \system. [Describe the key components:
|
|
220
|
+
hardware units, compiler passes, or OS mechanisms.]}
|
|
221
|
+
\label{fig:architecture}
|
|
222
|
+
\end{figure*}
|
|
223
|
+
|
|
224
|
+
\subsection{[Hardware/Compiler/OS Component A]}
|
|
225
|
+
|
|
226
|
+
Describe the first key component. The core scheduling algorithm is
|
|
227
|
+
shown in \cref{alg:scheduling}.
|
|
228
|
+
|
|
229
|
+
\begin{algorithm}[t]
|
|
230
|
+
\caption{[Algorithm name] in \system}
|
|
231
|
+
\label{alg:scheduling}
|
|
232
|
+
\begin{algorithmic}[1]
|
|
233
|
+
\STATE \textbf{Input:} computation graph $G(V, E)$, resource constraints $R$
|
|
234
|
+
\STATE \textbf{Output:} mapping $M: V \rightarrow R$
|
|
235
|
+
\FOR{each node $v \in \text{TopologicalSort}(V)$}
|
|
236
|
+
\STATE $t_v \leftarrow \max_{(u,v) \in E} (t_u + \text{latency}(u))$
|
|
237
|
+
\STATE $r^* \leftarrow \arg\min_{r \in R} \text{Cost}(v, r, t_v)$
|
|
238
|
+
\STATE $M[v] \leftarrow r^*$
|
|
239
|
+
\ENDFOR
|
|
240
|
+
\STATE \textbf{return} $M$
|
|
241
|
+
\end{algorithmic}
|
|
242
|
+
\end{algorithm}
|
|
243
|
+
|
|
244
|
+
\subsection{[Hardware/Compiler/OS Component B]}
|
|
245
|
+
|
|
246
|
+
Describe the second component. The performance improvement
|
|
247
|
+
from this component can be modeled as:
|
|
248
|
+
\begin{equation}
|
|
249
|
+
\label{eq:speedup}
|
|
250
|
+
S = \frac{1}{(1-f) + \frac{f}{p} + \frac{\alpha \cdot f}{B}}
|
|
251
|
+
\end{equation}
|
|
252
|
+
where $f$ is the parallelizable fraction, $p$ is the number of
|
|
253
|
+
processing elements, $B$ is the memory bandwidth, and $\alpha$
|
|
254
|
+
is the arithmetic intensity (ops/byte).
|
|
255
|
+
|
|
256
|
+
% Example: Code transformation (common in ASPLOS PL papers)
|
|
257
|
+
\subsection{Example: Code Transformation}
|
|
258
|
+
|
|
259
|
+
\Cref{fig:transform} shows how \system transforms [code pattern]
|
|
260
|
+
to exploit [hardware feature].
|
|
261
|
+
|
|
262
|
+
\begin{figure}[t]
|
|
263
|
+
\centering
|
|
264
|
+
\begin{minipage}[t]{0.48\columnwidth}
|
|
265
|
+
\centering
|
|
266
|
+
\begin{lstlisting}[title=\textbf{Before},language=C]
|
|
267
|
+
for (i = 0; i < N; i++)
|
|
268
|
+
for (j = 0; j < M; j++)
|
|
269
|
+
C[i][j] += A[i][k]
|
|
270
|
+
* B[k][j];
|
|
271
|
+
\end{lstlisting}
|
|
272
|
+
\end{minipage}
|
|
273
|
+
\hfill
|
|
274
|
+
\begin{minipage}[t]{0.48\columnwidth}
|
|
275
|
+
\centering
|
|
276
|
+
\begin{lstlisting}[title=\textbf{After (\system)},language=C]
|
|
277
|
+
for (ii = 0; ii < N;
|
|
278
|
+
ii += TILE)
|
|
279
|
+
for (jj = 0; jj < M;
|
|
280
|
+
jj += TILE)
|
|
281
|
+
kernel(A, B, C,
|
|
282
|
+
ii, jj);
|
|
283
|
+
\end{lstlisting}
|
|
284
|
+
\end{minipage}
|
|
285
|
+
\caption{Code transformation example. \system converts [pattern]
|
|
286
|
+
(left) into [optimized pattern] (right), improving [metric]
|
|
287
|
+
by [X]$\times$.}
|
|
288
|
+
\label{fig:transform}
|
|
289
|
+
\end{figure}
|
|
290
|
+
|
|
291
|
+
%----------------------------------------------------------------------
|
|
292
|
+
\section{Implementation}
|
|
293
|
+
\label{sec:implementation}
|
|
294
|
+
|
|
295
|
+
We implement \system as follows:
|
|
296
|
+
\begin{itemize}
|
|
297
|
+
\item \textbf{[Hardware component]:} [X]K gates in [HDL], synthesized
|
|
298
|
+
at [Y]\GHz using [process node].
|
|
299
|
+
\item \textbf{[Compiler component]:} [X]K lines of [language], integrated
|
|
300
|
+
with [LLVM/GCC/custom compiler].
|
|
301
|
+
\item \textbf{[OS component]:} [X] lines of kernel module in [language].
|
|
302
|
+
\end{itemize}
|
|
303
|
+
|
|
304
|
+
%----------------------------------------------------------------------
|
|
305
|
+
\section{Evaluation}
|
|
306
|
+
\label{sec:evaluation}
|
|
307
|
+
|
|
308
|
+
We evaluate \system to answer:
|
|
309
|
+
\begin{enumerate}
|
|
310
|
+
\item How does \system compare to state-of-the-art on standard benchmarks?
|
|
311
|
+
\item What is the hardware/software overhead?
|
|
312
|
+
\item How does each component contribute to the improvement?
|
|
313
|
+
\item How sensitive is \system to [key parameters]?
|
|
314
|
+
\end{enumerate}
|
|
315
|
+
|
|
316
|
+
\subsection{Methodology}
|
|
317
|
+
\label{sec:eval:method}
|
|
318
|
+
|
|
319
|
+
\para{Simulation/Hardware}
|
|
320
|
+
We evaluate using [simulator/FPGA/real hardware]: [details].
|
|
321
|
+
|
|
322
|
+
\para{Benchmarks}
|
|
323
|
+
We use [SPEC CPU/PARSEC/SPLASH/MLPerf/custom] benchmarks.
|
|
324
|
+
\Cref{tab:benchmarks} summarizes the evaluation suite.
|
|
325
|
+
|
|
326
|
+
\para{Baselines}
|
|
327
|
+
We compare against:
|
|
328
|
+
(1)~[Baseline A]~\cite{jouppi2017tpu},
|
|
329
|
+
(2)~[Baseline B]~\cite{kwon2018maeri}, and
|
|
330
|
+
(3)~[Baseline C].
|
|
331
|
+
|
|
332
|
+
\begin{table}[t]
|
|
333
|
+
\caption{Benchmark suite characteristics.}
|
|
334
|
+
\label{tab:benchmarks}
|
|
335
|
+
\centering
|
|
336
|
+
\begin{small}
|
|
337
|
+
\begin{tabular}{@{}llrr@{}}
|
|
338
|
+
\toprule
|
|
339
|
+
\textbf{Benchmark} & \textbf{Domain} & \textbf{Instructions} &
|
|
340
|
+
\textbf{Working Set} \\
|
|
341
|
+
\midrule
|
|
342
|
+
BenchA & Image & 2.1B & 64\,MB \\
|
|
343
|
+
BenchB & NLP & 4.8B & 128\,MB \\
|
|
344
|
+
BenchC & Graph & 1.3B & 256\,MB \\
|
|
345
|
+
BenchD & HPC & 8.2B & 512\,MB \\
|
|
346
|
+
BenchE & Serving & 0.6B & 32\,MB \\
|
|
347
|
+
\bottomrule
|
|
348
|
+
\end{tabular}
|
|
349
|
+
\end{small}
|
|
350
|
+
\end{table}
|
|
351
|
+
|
|
352
|
+
\subsection{Performance Results}
|
|
353
|
+
\label{sec:eval:perf}
|
|
354
|
+
|
|
355
|
+
\Cref{tab:performance} shows the main performance comparison.
|
|
356
|
+
\system achieves [X]$\times$ geometric mean speedup over [baseline].
|
|
357
|
+
|
|
358
|
+
\begin{table}[t]
|
|
359
|
+
\caption{Performance comparison (speedup over baseline).
|
|
360
|
+
Higher is better. Bold indicates best result.}
|
|
361
|
+
\label{tab:performance}
|
|
362
|
+
\centering
|
|
363
|
+
\begin{small}
|
|
364
|
+
\begin{tabular}{@{}lcccc@{}}
|
|
365
|
+
\toprule
|
|
366
|
+
\textbf{Benchmark} & \textbf{Base} & \textbf{Prior A} &
|
|
367
|
+
\textbf{Prior B} & \textbf{\system} \\
|
|
368
|
+
\midrule
|
|
369
|
+
BenchA & 1.00$\times$ & 1.42$\times$ & 1.55$\times$ & \textbf{2.13}$\times$ \\
|
|
370
|
+
BenchB & 1.00$\times$ & 1.28$\times$ & 1.39$\times$ & \textbf{1.87}$\times$ \\
|
|
371
|
+
BenchC & 1.00$\times$ & 1.15$\times$ & 1.22$\times$ & \textbf{1.64}$\times$ \\
|
|
372
|
+
BenchD & 1.00$\times$ & 1.51$\times$ & 1.68$\times$ & \textbf{2.35}$\times$ \\
|
|
373
|
+
BenchE & 1.00$\times$ & 1.33$\times$ & 1.41$\times$ & \textbf{1.92}$\times$ \\
|
|
374
|
+
\midrule
|
|
375
|
+
\textit{Geomean} & 1.00$\times$ & 1.33$\times$ & 1.44$\times$ &
|
|
376
|
+
\textbf{1.96}$\times$ \\
|
|
377
|
+
\bottomrule
|
|
378
|
+
\end{tabular}
|
|
379
|
+
\end{small}
|
|
380
|
+
\end{table}
|
|
381
|
+
|
|
382
|
+
\subsection{Area and Power Overhead}
|
|
383
|
+
\label{sec:eval:overhead}
|
|
384
|
+
|
|
385
|
+
\begin{figure}[t]
|
|
386
|
+
\centering
|
|
387
|
+
\fbox{\parbox{0.9\columnwidth}{\centering\vspace{3em}
|
|
388
|
+
\textit{Stacked bar chart: area/power breakdown by component}
|
|
389
|
+
\vspace{3em}}}
|
|
390
|
+
\caption{Area and power overhead of \system. The total overhead
|
|
391
|
+
is [X]\% area and [Y]\% power, dominated by [component].}
|
|
392
|
+
\label{fig:overhead}
|
|
393
|
+
\end{figure}
|
|
394
|
+
|
|
395
|
+
\subsection{Ablation Study}
|
|
396
|
+
\label{sec:eval:ablation}
|
|
397
|
+
|
|
398
|
+
\begin{figure}[t]
|
|
399
|
+
\centering
|
|
400
|
+
\fbox{\parbox{0.9\columnwidth}{\centering\vspace{3em}
|
|
401
|
+
\textit{Grouped bar chart: performance with components disabled}
|
|
402
|
+
\vspace{3em}}}
|
|
403
|
+
\caption{Ablation study. Removing [Component A] reduces speedup
|
|
404
|
+
from [X]$\times$ to [Y]$\times$, confirming its importance.}
|
|
405
|
+
\label{fig:ablation}
|
|
406
|
+
\end{figure}
|
|
407
|
+
|
|
408
|
+
\subsection{Sensitivity Analysis}
|
|
409
|
+
\label{sec:eval:sensitivity}
|
|
410
|
+
|
|
411
|
+
We vary [key parameter] from [min] to [max] to understand its
|
|
412
|
+
impact on performance.
|
|
413
|
+
|
|
414
|
+
%----------------------------------------------------------------------
|
|
415
|
+
\section{Discussion}
|
|
416
|
+
\label{sec:discussion}
|
|
417
|
+
|
|
418
|
+
\para{Generalizability}
|
|
419
|
+
[Discuss applicability to other architectures/workloads.]
|
|
420
|
+
|
|
421
|
+
\para{Limitations}
|
|
422
|
+
[Honest discussion of limitations and assumptions.]
|
|
423
|
+
|
|
424
|
+
%----------------------------------------------------------------------
|
|
425
|
+
\section{Related Work}
|
|
426
|
+
\label{sec:related}
|
|
427
|
+
|
|
428
|
+
\para{[Hardware Approaches]}
|
|
429
|
+
Prior architecture work~\cite{jouppi2017tpu, kwon2018maeri} addresses
|
|
430
|
+
[problem]. \system differs by [distinction].
|
|
431
|
+
|
|
432
|
+
\para{[Compiler/PL Approaches]}
|
|
433
|
+
Compiler techniques~\cite{lattner2004llvm} have targeted [problem].
|
|
434
|
+
\system complements these by [distinction].
|
|
435
|
+
|
|
436
|
+
\para{[OS/Runtime Approaches]}
|
|
437
|
+
OS-level approaches~\cite{hennessy2019new} provide [capability].
|
|
438
|
+
\system extends this with [technique].
|
|
439
|
+
|
|
440
|
+
%----------------------------------------------------------------------
|
|
441
|
+
\section{Conclusion}
|
|
442
|
+
\label{sec:conclusion}
|
|
443
|
+
|
|
444
|
+
We presented \system, a [technique] that advances [arch/PL/OS area]
|
|
445
|
+
by [capability]. \system achieves [X]$\times$ speedup over
|
|
446
|
+
state-of-the-art with only [Y]\% overhead, demonstrating the
|
|
447
|
+
effectiveness of [key insight].
|
|
448
|
+
|
|
449
|
+
%----------------------------------------------------------------------
|
|
450
|
+
% Acknowledgments (only in camera-ready, remove for submission)
|
|
451
|
+
% \begin{acks}
|
|
452
|
+
% We thank the anonymous reviewers for their feedback. This work was
|
|
453
|
+
% supported by [funding sources].
|
|
454
|
+
% \end{acks}
|
|
455
|
+
|
|
456
|
+
\bibliographystyle{ACM-Reference-Format}
|
|
457
|
+
\bibliography{references}
|
|
458
|
+
|
|
459
|
+
\end{document}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
% ASPLOS 2027 Example Bibliography
|
|
2
|
+
%
|
|
3
|
+
% This file contains example references demonstrating different BibTeX entry
|
|
4
|
+
% types commonly used in computer architecture, PL, and OS papers.
|
|
5
|
+
% Replace with your actual references.
|
|
6
|
+
%
|
|
7
|
+
% Entry types demonstrated:
|
|
8
|
+
% inproceedings -- Conference paper (most common in arch/systems)
|
|
9
|
+
% article -- Journal article
|
|
10
|
+
% book -- Book reference
|
|
11
|
+
% phdthesis -- Doctoral dissertation
|
|
12
|
+
% misc -- ArXiv preprint or software
|
|
13
|
+
|
|
14
|
+
%----------------------------------------------------------------------
|
|
15
|
+
% Conference papers (inproceedings) -- most common in ASPLOS
|
|
16
|
+
%----------------------------------------------------------------------
|
|
17
|
+
|
|
18
|
+
@inproceedings{jouppi2017tpu,
|
|
19
|
+
author = {Jouppi, Norman P. and Young, Cliff and Patil, Nishant and
|
|
20
|
+
Patterson, David and Agrawal, Gaurav and Bajwa, Raminder and
|
|
21
|
+
Bates, Sarah and Bhatia, Suresh and Boden, Nan and
|
|
22
|
+
Borber, Al and others},
|
|
23
|
+
title = {In-Datacenter Performance Analysis of a Tensor Processing Unit},
|
|
24
|
+
booktitle = {Proceedings of the 44th Annual International Symposium on
|
|
25
|
+
Computer Architecture (ISCA)},
|
|
26
|
+
year = {2017},
|
|
27
|
+
pages = {1--12},
|
|
28
|
+
address = {Toronto, ON, Canada},
|
|
29
|
+
publisher = {ACM},
|
|
30
|
+
doi = {10.1145/3079856.3080246},
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@inproceedings{kwon2018maeri,
|
|
34
|
+
author = {Kwon, Hyoukjun and Chatarasi, Parashar and Pellauer, Michael and
|
|
35
|
+
Parashar, Angshuman and Krishna, Tushar and Sarber, Paul},
|
|
36
|
+
title = {{MAERI}: Enabling Flexible Dataflow Mapping over {DNN}
|
|
37
|
+
Accelerators via Reconfigurable Interconnects},
|
|
38
|
+
booktitle = {Proceedings of the 23rd International Conference on
|
|
39
|
+
Architectural Support for Programming Languages and
|
|
40
|
+
Operating Systems (ASPLOS)},
|
|
41
|
+
year = {2018},
|
|
42
|
+
pages = {461--475},
|
|
43
|
+
address = {Williamsburg, VA},
|
|
44
|
+
publisher = {ACM},
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@inproceedings{lattner2004llvm,
|
|
48
|
+
author = {Lattner, Chris and Adve, Vikram},
|
|
49
|
+
title = {{LLVM}: A Compilation Framework for Lifelong Program Analysis
|
|
50
|
+
and Transformation},
|
|
51
|
+
booktitle = {Proceedings of the International Symposium on Code Generation
|
|
52
|
+
and Optimization (CGO)},
|
|
53
|
+
year = {2004},
|
|
54
|
+
pages = {75--86},
|
|
55
|
+
address = {Palo Alto, CA},
|
|
56
|
+
publisher = {IEEE},
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
@inproceedings{chen2018tvm,
|
|
60
|
+
author = {Chen, Tianqi and Moreau, Thierry and Jiang, Ziheng and
|
|
61
|
+
Zheng, Lianmin and Yan, Eddie and Sber, Haichen and
|
|
62
|
+
Cowan, Meghan and Wang, Leyuan and Hu, Yuwei and
|
|
63
|
+
Ceze, Luis and Guestrin, Carlos and Krishnamurthy, Arvind},
|
|
64
|
+
title = {{TVM}: An Automated End-to-End Optimizing Compiler for
|
|
65
|
+
Deep Learning},
|
|
66
|
+
booktitle = {Proceedings of the 13th USENIX Symposium on Operating Systems
|
|
67
|
+
Design and Implementation (OSDI)},
|
|
68
|
+
year = {2018},
|
|
69
|
+
pages = {578--594},
|
|
70
|
+
address = {Carlsbad, CA},
|
|
71
|
+
publisher = {USENIX Association},
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
@inproceedings{barroso2003web,
|
|
75
|
+
author = {Barroso, Luiz Andr\'{e} and Dean, Jeffrey and H\"{o}lzle, Urs},
|
|
76
|
+
title = {Web Search for a Planet: The {Google} Cluster Architecture},
|
|
77
|
+
booktitle = {IEEE Micro},
|
|
78
|
+
year = {2003},
|
|
79
|
+
volume = {23},
|
|
80
|
+
number = {2},
|
|
81
|
+
pages = {22--28},
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
@inproceedings{parashar2019timeloop,
|
|
85
|
+
author = {Parashar, Angshuman and Raina, Priyanka and Shao, Yakun Sophia
|
|
86
|
+
and Chen, Yu-Hsin and Emer, Joel and others},
|
|
87
|
+
title = {Timeloop: A Systematic Approach to {DNN} Accelerator Evaluation},
|
|
88
|
+
booktitle = {Proceedings of the IEEE International Symposium on Performance
|
|
89
|
+
Analysis of Systems and Software (ISPASS)},
|
|
90
|
+
year = {2019},
|
|
91
|
+
pages = {304--315},
|
|
92
|
+
publisher = {IEEE},
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
%----------------------------------------------------------------------
|
|
96
|
+
% Book (book)
|
|
97
|
+
%----------------------------------------------------------------------
|
|
98
|
+
|
|
99
|
+
@book{hennessy2019new,
|
|
100
|
+
author = {Hennessy, John L. and Patterson, David A.},
|
|
101
|
+
title = {A New Golden Age for Computer Architecture},
|
|
102
|
+
publisher = {Communications of the ACM},
|
|
103
|
+
year = {2019},
|
|
104
|
+
volume = {62},
|
|
105
|
+
number = {2},
|
|
106
|
+
pages = {48--60},
|
|
107
|
+
note = {Turing Award Lecture},
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
%----------------------------------------------------------------------
|
|
111
|
+
% ArXiv preprint (misc)
|
|
112
|
+
%----------------------------------------------------------------------
|
|
113
|
+
|
|
114
|
+
@misc{dao2022flashattention,
|
|
115
|
+
author = {Dao, Tri and Fu, Daniel Y. and Ermon, Stefano and
|
|
116
|
+
Rudra, Atri and R\'{e}, Christopher},
|
|
117
|
+
title = {{FlashAttention}: Fast and Memory-Efficient Exact Attention
|
|
118
|
+
with {IO}-Awareness},
|
|
119
|
+
year = {2022},
|
|
120
|
+
eprint = {2205.14135},
|
|
121
|
+
archivePrefix = {arXiv},
|
|
122
|
+
primaryClass = {cs.LG},
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
%----------------------------------------------------------------------
|
|
126
|
+
% PhD thesis (phdthesis)
|
|
127
|
+
%----------------------------------------------------------------------
|
|
128
|
+
|
|
129
|
+
@phdthesis{chen2020dnn,
|
|
130
|
+
author = {Chen, Yu-Hsin},
|
|
131
|
+
title = {Efficient Processing of Deep Neural Networks},
|
|
132
|
+
school = {Massachusetts Institute of Technology},
|
|
133
|
+
year = {2020},
|
|
134
|
+
address = {Cambridge, MA},
|
|
135
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
@inproceedings{Vaswani+2017,
|
|
2
|
+
author = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and Uszkoreit, Jakob and Jones, Llion and Gomez, Aidan N and Kaiser, \L ukasz and Polosukhin, Illia},
|
|
3
|
+
booktitle = {Advances in Neural Information Processing Systems},
|
|
4
|
+
pages = {},
|
|
5
|
+
publisher = {Curran Associates, Inc.},
|
|
6
|
+
title = {Attention is All you Need},
|
|
7
|
+
url = {https://proceedings.neurips.cc/paper_files/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf},
|
|
8
|
+
volume = {30},
|
|
9
|
+
year = {2017}
|
|
10
|
+
}
|
|
11
|
+
|