From 03f7d4de13b234c25df0e0e2a867400fd1915d99 Mon Sep 17 00:00:00 2001
From: Yifan Zhao <yifanz16@illinois.edu>
Date: Sat, 27 Mar 2021 15:25:41 -0500
Subject: [PATCH] Updated documents to include audience, submodule info, and
 doc-passing badge

---
 README.md             |  2 ++
 hpvm/docs/index.rst   | 33 +++++++++++++++++++++++++++++----
 hpvm/docs/install.rst |  4 ++++
 3 files changed, 35 insertions(+), 4 deletions(-)

diff --git a/README.md b/README.md
index c902d71c5f..0cfffa8444 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,7 @@
 # The HPVM Compiler Infrastructure
 
+[![Documentation Status](https://readthedocs.org/projects/hpvm/badge/?version=latest)](https://hpvm.readthedocs.io/en/latest/?badge=latest)
+
 This repository contains the source code and documentation for the HPVM Compiler Infrastructure.
 
 HPVM is a compiler for heterogeneous parallel system.
diff --git a/hpvm/docs/index.rst b/hpvm/docs/index.rst
index 694a51148d..8bf0744c50 100644
--- a/hpvm/docs/index.rst
+++ b/hpvm/docs/index.rst
@@ -6,16 +6,41 @@ The HPVM Compiler Infrastructure
 HPVM is a compiler for heterogeneous parallel system.
 For more about what HPVM is, see `our website <https://publish.illinois.edu/hpvm-project/>`_
 and publications:
-`PPoPP'18 paper <https://dl.acm.org/doi/pdf/10.1145/3200691.3178493>`_,
-`OOPSLA'19 paper <https://dl.acm.org/doi/10.1145/3360612>`_,
-`PPoPP'21 paper <https://dl.acm.org/doi/10.1145/3437801.3446108>`_.
+`HPVM (PPoPP'18) <https://dl.acm.org/doi/pdf/10.1145/3200691.3178493>`_,
+`ApproxHPVM (OOPSLA'19) <https://dl.acm.org/doi/10.1145/3360612>`_,
+`ApproxTuner (PPoPP'21) <https://dl.acm.org/doi/10.1145/3437801.3446108>`_.
 
 This is the documentation of HPVM at **version 1.0**.
 
 Audience
 --------
 
-TODO: write something here.
+The intended audience for HPVM includes researchers and developers working in the areas of
+compilers,programming languages, approximate computing, software optimization,
+static and dynamic program analysis, and systems for machine learning.
+
+`HPVM <https://dl.acm.org/doi/pdf/10.1145/3200691.3178493>`_
+includes a retargetable compiler infrastructure that targets CPUs, CPUs, and accelerators
+(this release does not include accelerator support)
+and uses a portable compiler IR that explicitly represents data flow at the IR level,
+and supports task, data, and pipelined parallelism.
+HPVM provides an extensible platform that compiler and programming languages
+researchers can use as part of their work.
+
+`ApproxHPVM <https://dl.acm.org/doi/10.1145/3360612>`_
+and `ApproxTuner <https://dl.acm.org/doi/10.1145/3437801.3446108>`_
+extend the HPVM compiler with support for high-level linear algebra tensor operations
+(e.g., convolution, matrix multiplication)
+and a framework that optimizes tensor-based programs using approximations
+that tradeoff accuracy for performance and/or energy.
+ApproxHPVM and ApproxTuner support many popular CNN models.
+ApproxTuner supports an approximation tuning system
+that automatically selects per-operation approximation knobs
+to maximize program performance,
+while allowing users to specify an acceptable degradation in accuracy.
+ApproxHPVM and ApproxTuner provide an extensible system that researchers in compilers,
+approximate computing and machine learning can use to optimize their applications,
+and experiment with new custom approximation techniques.
 
 Documentation
 -------------
diff --git a/hpvm/docs/install.rst b/hpvm/docs/install.rst
index 4876cf960c..fa4a3f747b 100644
--- a/hpvm/docs/install.rst
+++ b/hpvm/docs/install.rst
@@ -61,6 +61,10 @@ Checkout HPVM and go to directory ``./hpvm`` under project root:
    git clone --recursive -b approx_hpvm_reorg --single-branch https://gitlab.engr.illinois.edu/llvm/hpvm.git
    cd hpvm/
 
+If you have already cloned the repository without using ``--recursive``,
+the directory ``hpvm/projects/predtuner`` should be empty,
+which can be fixed with ``git submodule update --recursive --init``.
+
 HPVM needs to be able to find CUDA.
 If CUDA is installed in your system's $PATH (e.g. if it was installed at the default location),
 HPVM can find CUDA automatically.
-- 
GitLab