NerualPS投稿
投稿注意事项
个人总结的投稿注意事项:
- ≥两个月时间准备
- 摘要(标题)截稿后还可以修改
- 作者要在摘要 (标题) 截止前就填写完毕,过后不可修改
- 可以直接搜索人名添加作者
- 附录只有一次提交机会:
- 要么跟正文一起交(推荐,因为可以直接再正文引用附录)
- 要么延迟一周放附加文件列表里
- 摆放顺序是:正文——引文——checklist——附录
- 附录一定要尽量包含 checklist 里建议你摆放的内容,例如:
- 所有模型、数据的 License
- 详细环境配置和大概得参考复现时间
- checklist 只要把红色[TODO]填了就好了,别的都不要动
- dataset track 可以单盲提交,即提交时写作者信息:
- 有好有坏
- 写作者信息时可以简略一些,防止超过页数限制!
- 比如邮箱只写通讯作者的,后面再加就行
复现部分
需要新建容器(最好用容器提交,免得构建编译等环境):
我的 Dockerfile(有的直接从宿主机拷贝了,省的还要再 clone 一遍 llvm 等仓库):
########################################
# Stage-1 ── Build LLVM & Alive2
########################################
FROM ubuntu:22.04 AS builder
ARG JOBS=32
ENV http_proxy="" https_proxy="" ftp_proxy="" no_proxy=""
# 切换到国内源,加速安装
RUN sed -i 's|http://.*.ubuntu.com|http://mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list && \
sed -i 's|http://security.ubuntu.com|http://mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list && \
apt-get update && \
apt-get install -y --no-install-recommends \
build-essential git cmake ninja-build python3 python3-venv curl ca-certificates \
zlib1g-dev libtinfo6 libz3-dev re2c && \
rm -rf /var/lib/apt/lists/*
WORKDIR /opt
# ---------- 构建 LLVM ----------
COPY llvm-project /opt/llvm-project
RUN cmake -S llvm-project/llvm -B llvm_build -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_TARGETS_TO_BUILD="X86;AArch64" \
-DLLVM_ENABLE_PROJECTS="clang;lld" \
-DLLVM_ENABLE_RTTI=ON \
-DLLVM_ENABLE_EH=ON \
-DLLVM_INCLUDE_TESTS=OFF \
-DLLVM_INCLUDE_EXAMPLES=OFF \
-DLLVM_INCLUDE_BENCHMARKS=OFF && \
cmake --build llvm_build -j${JOBS} && \
cmake --install llvm_build && \
rm -rf llvm-project llvm_build
# ---------- 构建 Alive2 ----------
COPY alive2 /opt/alive2
RUN cmake -S alive2 -B alive_build -G Ninja \
-DLLVM_DIR=/usr/local/lib/cmake/llvm && \
cmake --build alive_build -j${JOBS} && \
cmake --install alive_build && \
rm -rf alive2 alive_build
########################################
# Stage-2 ── 完整 Runtime(增强版)
########################################
FROM ubuntu:22.04 AS runtime
COPY /usr/local /usr/local
ENV http_proxy="" https_proxy="" ftp_proxy="" no_proxy=""
# 切换到国内源并安装常用工具:bash, busybox, file, lsb-release, locales…
RUN sed -i 's|http://.*.ubuntu.com|http://mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list && \
sed -i 's|http://security.ubuntu.com|http://mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list && \
apt-get update && \
apt-get install -y --no-install-recommends \
bash \
busybox-static \
file \
lsb-release \
locales \
python3 \
python3-venv \
git \
curl \
ca-certificates && \
# 配置一个默认本地化以便 man 等能工作
locale-gen en_US.UTF-8 && \
# 链接 /bin/sh 到 busybox
ln -sf /bin/busybox /bin/sh && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
ENV PATH="/usr/local/bin:${PATH}" \
LANG=en_US.UTF-8 \
LC_ALL=en_US.UTF-8
WORKDIR /workspace
# 默认进入 busybox sh;也可用 --entrypoint bash
ENTRYPOINT ["/bin/sh"]
然后运行:
DOCKER_BUILDKIT=0 \
http_proxy="" https_proxy="" all_proxy="" \
docker build --no-cache -t llvm-alive2:fulllinux .
等待结束后使用此命令检查是否成功生成:
docker images | grep llvm-alive2
应该可以打印:llvm-alive2 neurips25 2e35eb629cf4 9 days ago 2.76GB
然后是用 github 的 Personal access tokens (classic) 登录 docker(-u 后面是 github 用户名):
docker login ghcr.io -u yilingqinghan
按提示输入密码(token)后会显示 Login Succeeded
。
然后就可以推送 docker 到 GHCR 了。
docker tag llvm-alive2:fulllinux \
ghcr.io/yilingqinghan/llvm-alive2:fulllinux
docker push ghcr.io/yilingqinghan/llvm-alive2:fulllinux
如果成功的话,应该在 ghcr.io/yilingqinghan/llvm-alive2:fulllinux
评论