跳转至

Latex

Outstanding Blog or Overview Paper

常用数学符号的 LaTeX 表示方法

Latex数学符号对应表

LaTeX 各种命令,符号

常见设置

AOE 提交时间

始终 比中国慢 20 小时

宏定义

% 宏定义
\newcommand{\tip}[1]{\textcolor{olive}{Tips: #1}}
\newcommand{\todo}[1]{\textcolor{blue}{Todo: #1}}
\newcommand{\confused}[1]{\textcolor{red}{Confused: #1}}
\newcommand{\diff}[1]{\textcolor{magenta}{#1}}
\newcommand{\po}[1]{\textcolor{teal}{#1}} % polished

% 去除 
\newcommand{\tip}[1]{\textcolor{olive}{}}
\newcommand{\todo}[1]{\textcolor{blue}{}}
\newcommand{\confused}[1]{\textcolor{red}{}}
\newcommand{\diff}[1]{{#1}}
\newcommand{\po}[1]{{#1}}

Author Equal contribution

\author{\IEEEauthorblockN{Qingcai Jiang$^*$\IEEEauthorrefmark{2}, Shaojie Tan$^*$\IEEEauthorrefmark{2}, Junshi Chen\IEEEauthorrefmark{3} and Hong An\IEEEauthorrefmark{3}}
\IEEEauthorblockA{\IEEEauthorrefmark{2}\IEEEauthorrefmark{3}School of Computer Science and Technology, University of Science and Technology of China, Hefei, China \\
}
% \IEEEauthorblockA{\IEEEauthorrefmark{3}Hefei National Laboratory for Physical Sciences at the Microscale, Department of Chemical Physics,\\
% and Synergetic Innovation Center of Quantum Information and Quantum Physics,\\
% University of Science and Technology of China, Hefei, China \\
% }
\IEEEauthorblockA{Email: \IEEEauthorrefmark{2}\{jqc, shaojiemike\}@mail.ustc.edu.cn, 
\IEEEauthorrefmark{3}\{cjuns, han\}@ustc.edu.cn}
}

\maketitle
% These authors contributed equally to this work.
\def\thefootnote{*}\footnotetext{Equal contribution. Listing order is random.}\def\thefootnote{\arabic{footnote}}

1

颜色 color

好看的颜色

magenta and violet and purple and orange

字体 font

字体样式

  • \textbf{ 加粗 }
  • 斜体\emph{斜体}
  • 下划线\underline{下划线}

字体大小

\fontsize{字体尺寸}{行间距}\selectfont

  • 字体尺寸是0.5pt的倍数,向上取0.5倍数。
  • 行间距一般为字体大小的1.2~1.5倍或者使用\baselineskip

格式

黑底圆圈白色数字(流程图说明)

\circlednumber{1}
\newcommand{\circlednumber}[1]{%
\tikz[baseline=(char.base)]{
\node[shape=circle,draw,inner sep=0.8pt,fill=black,text=white] (char) {#1};}}

Here is a circled number: \circlednumber{1}

在这个命令中,shape=circle指定了节点的形状是圆形,draw表示绘制圆形的边界,inner sep=0.8pt设置了圆形内部的边距(可以根据需要调整大小),fill=black将圆形填充为黑色,而text=white将文本颜色设置为白色。

有序无序list

\begin{enumerate}
    \item 有序
\end{enumerate}
\begin{itemize}
    \item 无序
\end{itemize}

代码块

如何格式实在难调整,可以考虑carbon

C++ color style

\usepackage{listings} % 使用listings宏包
\begin{lstlisting}[caption={xxx},language=HTML,label={lst:fsub},style={mystyle}]


\end{lstlisting}

及其格式设置

\definecolor{codegreen}{rgb}{0,0.6,0}
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
\definecolor{codepurple}{rgb}{0.58,0,0.82}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\lstdefinestyle{mystyle}{
    backgroundcolor=\color{backcolour},   
    % basicstyle=\ttfamily\footnotesize,
    basicstyle=\fontsize{7}{8.4}\selectfont\ttfamily,
    commentstyle=\color{codegreen},
    stringstyle=\color{codepurple},
    keywordstyle=\color{red}, %根据语言的选择有不同的关键字
    % identifierstyle=\color{red}, %根据语言的选择有不同的标识符 def hello(): # def是关键字,hello是标识符 又如:print("Hello, world!") # print是函数名,也是标识符

    numbers=left, %在左侧显示行数
    numbers=right %在右侧显示行数
    numbers=none, %去掉行数显示
    numberstyle=\tiny\color{codegray}, %行号
    stepnumber=2, %每两行标号一次
    numbersep=5pt, %行号与代码的距离

    breakatwhitespace=false,         %是否只在空白处换行。空白包括空格、制表符等。如果你设置breakatwhitespace为false,那么代码列表中的过长的行会在任何字符处换行。
    breaklines=true,                 % 允许过长换行

    captionpos=b,                   %设置代码列表的标题位置。你可以设置captionpos为t或b,分别表示标题在代码列表的上方或下方。

    keepspaces=true,                   %保留空格。如果你设置keepspaces为true,那么代码列表中的空格会按照原样显示,而不会被忽略或压缩。
    showspaces=false,                
    showstringspaces=false, %去掉空格时产生的下划的空格标志, 设置为true则出现
    showtabs=false,                  
    tabsize=2 %此时一个tab键=2个空格
}
\lstset{style=mystyle}

可选字体style

  • \tt, %使用teletype字体(一种等宽字体)
  • \it, %使用罗马斜体
  • \bfseries, %不改变当前字体的族与形状,但转变成bold加粗序列
  • \mdseries, %不改变当前字体的族与形状,但转变成中等粗细medium序列
  • \underbar, %添加下划线

图片

\begin{figure}[H]
    \centering
    \includegraphics[width=10cm]{images/image1.png}
    \caption{用户兴趣统计图}
    \label{fig:my_label1}
\end{figure}

这是下面是两栏只占一栏,如果要横框两栏,figure后加*

\def\hheatmap{0.245}
\begin{figure}[htbp]   %设置图片的位置优先级 h(here)图片优先放在代码位置。t(top)b(bottom) p(page) 新开一页。

 \centering

 \centerline{\includegraphics[width=\hheatmap\linewidth,scale=1.00]{tight.png}}
    % 或者如下
    \centerline{\includegraphics[width=0.6\linewidth]{figures/ooo_port.jpg}}

 %[]里面的参数自己可根据需要调整

 \caption{Please write what you want.}

 \label{FigureOne}

\end{figure}

插图清单

图片应该能在不看正文的情况理解,所以可能会有图注。为了不在插图清单里显示图注。可以用[]进行如下处理

\caption[鲲鹏920上优化后的llvm-mca测得的基本块吞吐量热图]{鲲鹏920上优化后的llvm-mca测得的基本块吞吐量热图,图中绿色虚线代表10\%误差率,紫色虚线代表20\%误差率。}

a,b 左右两图

\begin{figure}[ht]
    \centering
    \begin{subfigure}{.5\textwidth}
        \centering
        \includegraphics[width=.8\linewidth]{figures/chaper2/skylake.png}
        \caption{Intel skylake的单核微架构}
        \label{fig:skylake}
    \end{subfigure}%
    \begin{subfigure}{.5\textwidth}
        \centering
        \includegraphics[width=.8\linewidth]{figures/chaper2/arm.png}
        \caption{Arm Neoverse N1的单核微架构}
        \label{fig:arm}
    \end{subfigure}
    \caption{X86 和 Arm 处理器微架构示意图}
    \label{fig:test}
\end{figure}

引用标题

\section{Me, myself and I}
\label{intro}

\nameref{intro}.
\ref{intro}.

超链接

\usepackage[colorlinks,linkcolor=blue]{hyperref}

\href{http://v.youku.com/}{Youku video} 

表格

\begin{center}

\renewcommand{\arraystretch}{1.3} % 增加行高

\begin{tabular}{ccc}
\hline
SYMBOL & DESCRIPTION\\
\hline
U = \{$u_i$\} &the set of users\\
G = \{$g_k$\} &the set of groups\\
\hline
\end{tabular}
\end{center}

三线表

\begin{table}[htbp]
    \centering
    \caption{Source applications of benchmark basic blocks}
    \begin{tabular}{ccc}
        \toprule
        Application & Domain & \# Basic Blocks \\ 
        \midrule
        Clang & Compiler & 60000 \\
        \bottomrule
    \end{tabular}
    \label{fig:BBtable}
\end{table}

短横线或者这个

算法

algorithm2e

USTC毕业论文使用

\usepackage[ruled,linesnumbered,vlined]{algorithm2e}


\begin{algorithm}[htb]
\caption{端口使用信息分析}
\label{alg:PortUsageAnalysis}
\small % 把算法所占空间变小
\SetAlgoLined % 设置算法为带线条的格式

\KwIn{待分析指令 $I$, 一组已知端口使用情况的指令集 $K$}
\KwOut{待分析指令的端口使用情况}

\ForEach{每条已知端口使用情况的指令 $k \in K$}{
    构造指令 $k$ 和指令 $I$ 之间无寄存器和内存依赖\;
    单独测量指令 $I$ 的吞吐量 $T_I$\;
    单独测量指令 $k$ 的吞吐量 $T_k$\;
    测量指令 $I$$k$ 组合的吞吐量 $T_{I+k}$\;
    \eIf{$T_I + T_k = T_{I+k}$}{
        记录指令 $I$ 未使用指令 $k$ 的端口\;
    }{
        记录指令 $I$ 使用了与指令 $k$ 相同的端口\;
    }
}
通过对比分析确定指令 $I$ 的端口使用情况\;


\end{algorithm}

algorithmic

\usepackage{algorithm}
\usepackage{algorithmic}

% 重定义关键词以支持中文
\floatname{algorithm}{算法}
\renewcommand{\algorithmicrequire}{\textbf{输入:}}
\renewcommand{\algorithmicensure}{\textbf{输出:}}

\renewcommand{\algorithmicrequire}{\textbf{Input:}}
\renewcommand{\algorithmicensure}{\textbf{Output:}}

\begin{algorithm}
 %\textsl{}\setstretch{1.8}
 \caption{Iterative Solution for Training Stage}
 \label{alg1}
 \begin{algorithmic}[1]
     \REQUIRE target user group $\mathbf{U}=\left\{u_{i}\right\}$, group set $\mathbf{G}=\left\{g_{k}\right\}$ and attendance records $\left\{s_{i, k}^{0}\right\}$
     \renewcommand{\algorithmicrequire}{\textbf{Store:}}
     \REQUIRE group attributes $\mathbf{a}_{k}$ for each $g_{k} \in \mathbf{G}$
     \ENSURE  users' profile $\left\langle\mathbf{p}_{i}, h_{i, 0}\right\rangle$ and social strength $w_{i j}$
  \STATE Iteration = True;
  \WHILE{Iteration}
  \STATE Iteration $=$ False;
  \FOR[comment for FOR] {$u_{i} \in \mathbf{U}, g_{k} \in \mathbf{G}$}
  \STATE update $\left\langle\mathbf{p}_{i}, h_{i, 0}\right\rangle$ and $\left\{w_{i j}\right\}$ until convergence;
  \STATE update $f_{i, k}, h_{i, k}$ based on Equation 2;
  \STATE update $s_{i, k}$ as $\mathcal{I}\left(f_{i, k}-h_{i, k}\right)$;
  \IF{$s_{i, k}$ changed} 
  \STATE Iteration $=$ True;
  \ENDIF
  \ENDFOR
  \ENDWHILE
 \end{algorithmic}  
\end{algorithm}

algpseudocode

\documentclass{article}
\usepackage{algorithm}
\usepackage{algpseudocode}
\begin{document}
\begin{algorithm}
\caption{An algorithm with caption}\label{alg:cap}
\begin{algorithmic}[1]
\Require $n \geq 0$
\Ensure $y = x^n$
\State $y \gets 1$
\State $X \gets x$
\State $N \gets n$
\While{$N \neq 0$}
\If{$N$ is even}
    \State $X \gets X \times X$
    \State $N \gets \frac{N}{2}$  \Comment{This is a comment}
\ElsIf{$N$ is odd}
    \State $y \gets y \times X$
    \State $N \gets N - 1$
\EndIf
\EndWhile
\end{algorithmic}
\end{algorithm}

\end{document}

公式

\usepackage{amsmath} % 使用amsmath宏包
\begin{equation}\label{eq:IFB}
    I=\frac{F}{B}
\end{equation}

带编号的公式

公式溢出调整大小。使用类似\begin{footnotesize}的框起来。

\begin{align}
\arg \min _{\mathbf{p}, h_{0}, w} \sum_{u_{i} \in U} \sum_{g_{k} \in G}\left[s_{i, k}^{0}-\mathcal{I}\left(f_{i, k}-h_{i, k}\right)\right]^{2}\label{4}
\end{align}

对齐等号

  • aligned就是用来公式对齐的,在中间公式中,
  • \\ 表示换行,
  • & 表示对齐。在公式中等号之前加&来对齐。
  • * 代表取消公式编号(1)
\begin{align*}

* &= *\\
&=* \\
  &= *
\end{align*}

换行命令

\\:换行。
\\[offset]:换行,并且与下一行的行间距为原来行间距+offset。
\newline:与\\相同。
\linebreak:强制换行,与\newline的区别为\linebreak的当前行分散对齐。

分段命令

\par:分段。

分页命令

\newpage:分页命令。
\clearpage:和 \newpage 类似。我们在使用 CJK 环境时会加入 \clearpage 在环境末尾。

脚注

\footnote{}

各种普通符号

省略号

\cdots是横向的省略号
\vdots是竖向的省略号
\ddots是对角线方向的省略号
\ldots 是跟文本底线对齐的省略号

箭头

\rightarrow → \leftarrow ← \Rightarrow ⇒ \Leftarrow ⇐

数学字符上的剪头 \overrightarrow{}

各类箭头符号集锦,原文链接:http://www.hijtr.com/latex-arrows/

大小括号

$$
f(x)=
\begin{cases}
0& \text{x=0}
\\
1& \text{x!=0}
\end{cases}
$$

矩阵符号

$$
\left [ \begin{matrix}
1& 3 \\
2& 4 \\
\end{matrix} \right ]
$$

其中 \left 和 \right 表示左右定界符,后面跟着的是左右封闭的符号,可以是 | 或者 [] 或者 {}

各种表格

https://blog.csdn.net/JueChenYi/article/details/77116011

数学特殊符号

其余

$
\bra{\psi}%左态矢
\ket{\psi}%右态矢
\hat{H}%在H上方加帽子
\hat{H^{\dagger}}%H的转置复共轭
$

$
\langle\psi|%左态矢
|\psi\rangle%右态矢
$

上下左右

\underset{下面}{\max}

vector

\vec{AB}

任意元素, 所有元素

% (1)任意
$ {\forall}$
% (2)存在
$ {\exists}$

属于,不属于

属于: /in

不属于:/notin

运算符

点乘:a \cdot b

叉乘:a \times b

除以:a \div b

求和 \sum_{}^{}

开方 \sqrt{}

\le和\leq为小于等于

\ge和\geq为大于等于

\neq为不等于

\equiv 恒等于

\approx 约等于

各种数域

\usepackage{amsfonts} 或则 \usepackage{amssymb}

有理数在英文中称作rational number

希腊字母表

https://blog.csdn.net/xxzhangx/article/details/52778539

文献引用

不使用BibTeX

\begin{thebibliography}{99}  
\bibitem{ref1}Zheng L, Wang S, Tian L, et al., Query-adaptive late fusion for image search and person re-identification, Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015: 1741-1750.  
\bibitem{ref2}Arandjelović R, Zisserman A, Three things everyone should know to improve object retrieval, Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, IEEE, 2012: 2911-2918.  
\end{thebibliography}

使用

~\cite{ref1}
~\cite{ref1, ref5}
~\cite{} 一定要写~号

在 LaTeX 中,使用 ~\cite{} 的方式引用文献的原因是为了保持引用与前面的文字之间的联系。在 LaTeX 中,波浪线 ~ 代表一个不可断行的空格,确保引用标记不会在行末被分开。

如果你直接写 \cite{} 而不使用 ~,在某些情况下,文献引用可能会出现在新的一行的开头,而与前面提到的内容分离,这在排版上看起来不太美观,也可能导致阅读上的困扰。使用 ~\cite{} 确保引用紧跟在提到的内容之后,即使它恰好出现在行末,也不会被移到下一行的开头。

使用BibTeX

BibTeX 文件的后缀名为 .bib, google scholar查找其内容

@article{name1,
author = {作者, 多个作者用 and 连接},
title = {标题},
journal = {期刊名},
volume = {卷20},
number = {页码},
year = {年份},
abstract = {摘要, 这个主要是引用的时候自己参考的, 这一行不是必须的}
}
@book{name2,
author ="作者",
year="年份2008",
title="书名",
publisher ="出版社名称"
}

overleaf使用

  1. 生成 ref.bib
  2. 各种学术网址引用BibTex
  3. \end{document} 之前加入
  4. \bibliographystyle{ieeetr}, ieeetr国际电气电子工程师协会期刊
  5. \bibliography{ref} , ref就是之前建立的ref.bib文件的前缀, present the source of reference information
  6. \cite{Han}。 在 ref.bib文件中的Han 与\cite{Han} 保持一致

pink and clickable URL

\usepackage[colorlinks=true,linkcolor=black,urlcolor=magenta]{hyperref}

shorten reference

短小的会议(e.g, DATE)需要精简的引用

Requirements:

  1. shorten authors (1st author only, others are shorten "et al")
  2. Bibtex can sort the showed element, but not support sellect the showed elements. So you should delete useless elements in bib file like publisher, pages
design your bib style

Blog shows that we can select bibliographystyle in these choices, and design your cite in this

\documentclass{article}
\usepackage[style=numeric,backend=biber]{biblatex}
\usepackage[colorlinks=true,linkcolor=black,urlcolor=magenta]{hyperref}
\addbibresource{jobname.bib} % Replace with the actual name of your .bib file

\usepackage{etoolbox}
\setlength{\biblabelsep}{0.5em} % Adjust the distance between the label (e.g., [1]) and the main text in the reference section as needed

\DeclareCiteCommand{\cite}
  {\usebibmacro{prenote}}
  {\mkbibbrackets{\printfield{labelnumber}}} % cite number in main body should be surrounded by square brackets
  {\multicitedelim}
  {\usebibmacro{postnote}}

\DeclareSortingScheme{custom}{
  \sort[direction=ascending]{\field{author}} % showed order
  \sort[direction=ascending]{\field{title}}
  \sort[direction=ascending]{\field{year}}
}

\DeclareSortingTemplate{custom}{\sort[direction=ascending]{\field{sortkey}}}

% Define a command to set the font size for the reference section
\newcommand{\smallerfont}{\fontsize{9}{11}\selectfont} % Adjust the font size as needed
\AtBeginBibliography{\smallerfont} % Set the font size for the entire reference section

% Redefine the "in:" bibmacro
\renewbibmacro{in:}{%
  \ifentrytype{article}
    {\printtext{in abc}} % if true
    {\printtext{in xxx \addcolon}}% else 
}

% Redefine the title bibmacro to change the punctuation
\renewbibmacro*{title}{% can not get worked in author and journal enries, So weird
  \printfield{title}%
  \printtext{,}
}

\renewbibmacro*{journal+issuetitle}{%
  \usebibmacro{journal}%
  % \printtext{,}
  % \setunit{\addcomma\space}% Change the separator here
  % \iffieldundef{series}
  %   {}
  %   {\newunit
  %    \printfield{series}%
  %    \setunit{\addspace}}%
  % \usebibmacro{volume+number+eid}%
  % \setunit{\addcolon\space}%
  % \usebibmacro{note+pages}%
  % \newunit
  \usebibmacro{issue+date}%
  % \newunit
}
\renewbibmacro*{booktitle}{
  \printfield{booktitle}%
  \printtext{,} 
}

\begin{document}
~\cite{Smith2020} found that...
~\cite{A01} found that...

\printbibliography
\end{document}

or just not using BibTeX

Simplist : manual insert

\begin{thebibliography}{00}
\bibitem{ahn2015scalable} Junwhan Ahn \emph{et al}., “A scalable processing-in-memory accelerator for
parallel graph processing”, in  \emph{ISCA}, 2015.
\bibitem{ahn2015pim} Junwhan Ahn \emph{et al}., “PIM-enabled instructions: A low-overhead,
locality-aware processing-in-memory architecture”, in  \emph{ACM SIGARCH
Computer Architecture News}, 2015.
\bibitem{allen1970control} Frances E Allen. “Control flow analysis”, in  \emph{ACM Sigplan Notices}, 1970.
\bibitem{ARM-VIPT} ARM. ARM Cortex-A Series Programmer’s Guide for ARMv7-A, URL:
\href{https://developer.arm.com/documentation/den0013/d/Caches/Cache-architecture/Virtual-and-physical-tags-and-indexes.}{https://developer.arm.com/documentation/den0013/d/Caches/Cache-architecture/Virtual-and-physical-tags-and-indexes.}
\bibitem{beamer2015gap} S. Beamer \emph{et al}., “The GAP benchmark suite”, \emph{CoRR}, 2015. [Online]. Available: \href{http://arxiv.org/abs/1508.03619}{http://arxiv.org/abs/1508.03619}
\bibitem{sniper_carlson2014evaluation} Trevor E Carlson \emph{et al}., “An evaluation of high-level mechanistic core
models”, in \emph{TACO}, 2014.
\bibitem{hmc} Hybrid Memory Cube Consortium, “HMC Specification 2.0", 2014.
\bibitem{gao2015practical} Mingyu Gao, Grant Ayers, and Christos Kozyrakis. “Practical near-data
processing for in-memory analytics frameworks”, in \emph{PACT}, 2015.
\bibitem{ghiasi2022alp} Nika Mansouri Ghiasi \emph{et al}., “ALP: Alleviating CPU-Memory Data
Movement Overheads in Memory-Centric Systems”, in \emph{TETC}, 2022.
\bibitem{gomez2021benchmarking} Juan Gómez-Luna \emph{et al}., “Benchmarking Memory-centric Computing
Systems: Analysis of Real Processing-in-Memory Hardware”, in \emph{IGSC},\;
2021.
\bibitem{kunpeng920} HiSilicon,“Kunpeng 920 Chipset”, \href{https://www.hisilicon.com/en/products/Kunpeng/Huawei-Kunpeng/Huawei-Kunpeng-920}{https://www.hisilicon.com/en/products
/Kunpeng/Huawei-Kunpeng/Huawei-Kunpeng-920}, 2021.
\bibitem{hsieh2016transparent} Kevin Hsieh \emph{et al}., “Transparent offloading and mapping (TOM) enabling programmer-transparent near-data processing in GPU systems”,
in \emph{ACM SIGARCH Computer Architecture News}, 2016.
\bibitem{nai2017graphpim} Nai, Lifeng,  \emph{et al}., "Graphpim: Enabling instruction-level pim offloading in graph computing frameworks", in \emph{HPCA}, 2017.
\bibitem{iaca2017} Intel,“Intel Architecture Code Analyzer User’s Guide”, \href{https://www.intel.com/content/dam/develop/external/us/en/documents/intel-architecture-code-analyzer-3-0-users-guide-157552.pdf}{https://software.
intel.com/content/dam/develop/external/us/en/documents/intel-architecture-code-analyzer-3-0-users-guide-157552.pdf}, 2017.
\bibitem{jiang2022quantifying} Qingcai Jiang \emph{et al}., “Quantifying Throughput of Basic Blocks on
ARM Microarchitectures by Static Code Analyzers: A Case Study on
Kunpeng 920”, in \emph{HPCC}, 2022.
\bibitem{lattner2004llvm} Chris Lattner and Vikram Adve., “LLVM: A compilation framework
for lifelong program analysis \& transformation”, in \emph{CGO}, 2004.
\bibitem{litton2016light} James Litton \emph{et al}., “Light-Weight Contexts: An OS Abstraction for
Safety and Performance”, in \emph{OSDI}, 2016.
\bibitem{mendis2019ithemal} Charith Mendis \emph{et al}., “Ithemal: Accurate, portable and fast basic block
throughput estimation using deep neural networks”, in \emph{International
Conference on machine learning}, 2019.
\bibitem{tan2023uncovering} Tan Shaojie \emph{et al}., “Uncovering the performance bottleneck of modern
HPC processor with static code analyzer: a case study on Kunpeng 
920”, in \emph{CCF Trans. HPC}, 2023.
\bibitem{suleman2010data} M Aater Suleman \emph{et al}., “Data marshaling for multi-core architectures”,
in \emph{ISCA}, 2010.
\bibitem{wei2022pimprof} Yizhou Wei \emph{et al}., “PIMProf: an automated program profiler for
processing-in-memory offloading decisions”, in \emph{DATE}, 2022.
\bibitem{locality2005sc} J. Weinberg \emph{et al}., “Quantifying Locality In The Memory Access
Patterns of HPC Applications”, in \emph{SC}, 2005.
\end{thebibliography}

colorful the url

\usepackage[colorlinks=true,linkcolor=black,urlcolor=magenta,citecolor=blue]{hyperref}

\href{https://www.hisilicon.com/en/products/Kunpeng/Huawei-Kunpeng/Huawei-Kunpeng-920}{https://www.hisilicon.com/en/products
/Kunpeng/Huawei-Kunpeng/Huawei-Kunpeng-920}

italic 'et al'

According to blog, it seems we should change the bst file. But this issure shows a available way:

\newcommand*{\mkbibetal}[1]{#1}
\renewcommand*{\mkbibetal}{\mkbibitalic}

\renewbibmacro*{name:andothers}{%  The * symbol is used to make sure that any previous redefinitions of the same macro are discarded, and the new definition takes precedence.
  \ifboolexpr{
    test {\ifnumequal{\value{listcount}}{\value{liststop}}}
    and
    test \ifmorenames
  }
    {\ifnumgreater{\value{liststop}}{1}
       {\finalandcomma}
       {}%
     \printdelim{andothersdelim}\bibstring[\mkbibetal]{andothers}}
    {}}

bbl for Arxiv

提交论文到学术会议或期刊时,遇到这样的提示说明您提交的材料缺少必要的.bbl文件。在LaTeX文档中,.bib文件包含您引用的文献的数据库,而.tex文件是您的主文档。

当您使用BibTeX生成参考文献时,它会创建一个.bbl文件,该文件包含从.bib文件中提取的、经过格式化的参考文献列表,这个列表会被插入到最终的文档中。

Install Tex on Ubuntu

sudo apt update
sudo apt install texlive-full

如果您不需要完整版,也可以只安装基本版或标准版(例如,使用texlive-basetexlive包),但完整版包含了大多数用户可能需要的所有包和程序。

安装完成后,您可以通过运行以下命令来验证TeX Live和BibTeX是否已成功安装:

pdflatex --version
bibtex --version

Generate bbl

TODO

参考文献

https://www.cnblogs.com/yifdu25/p/8330652.html

https://blog.csdn.net/qq_33066729/article/details/88066630