Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated readme and changed branding to deepview #63

Merged
merged 1 commit into from
Apr 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .github/workflows/build-vsix.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,18 +44,18 @@ jobs:

- name: Set RELEASE_VERSION
run: |
RELEASE_VERSION=$(node -p "require('./skyline-vscode/package.json').version")
RELEASE_VERSION=$(node -p "require('./deepview-explore/package.json').version")
echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_ENV

- name: Upload vsix artifact
uses: actions/upload-artifact@v3
with:
name: deepview-explore-${{ env.RELEASE_VERSION }}.vsix
path: skyline-vscode/deepview-explore-${{ env.RELEASE_VERSION }}.vsix
path: deepview-explore/deepview-explore-${{ env.RELEASE_VERSION }}.vsix

- name: Upload vsix artifact to S3
run: |
aws s3 cp skyline-vscode/deepview-explore-${{ env.RELEASE_VERSION }}.vsix s3://centml-releases/deepview-explore/
aws s3 cp deepview-explore/deepview-explore-${{ env.RELEASE_VERSION }}.vsix s3://centml-releases/deepview-explore/

update-index:
name: Update index.html in S3 bucket
Expand All @@ -81,7 +81,7 @@ jobs:
run: |
pip3 install dominate

- name: Download all versions of Deepview-explore from S3
- name: Download all versions of DeepView-Explore from S3
run : |
mkdir vsix
cd vsix
Expand Down Expand Up @@ -110,7 +110,7 @@ jobs:

- name: Set RELEASE_VERSION
run: |
RELEASE_VERSION=$(node -p "require('./skyline-vscode/package.json').version")
RELEASE_VERSION=$(node -p "require('./deepview-explore/package.json').version")
echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_ENV

- name: Download artifact
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/update-cloud-providers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
branches:
- main
paths:
- 'skyline-vscode/react-ui/public/providers.json'
- 'deepview-explore/react-ui/public/providers.json'

jobs:
update-information:
Expand All @@ -26,5 +26,5 @@ jobs:

- name: Upload cloud provider file to S3
run: |
aws s3 cp skyline-vscode/react-ui/public/providers.json s3://deepview-explorer-public/vscode-cloud-providers/
aws s3 cp deepview-explore/react-ui/public/providers.json s3://deepview-explorer-public/vscode-cloud-providers/
aws s3api put-object-acl --bucket deepview-explorer-public --key vscode-cloud-providers/providers.json --acl public-read
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
node_modules
skyline-vscode/src/version.ts
node_modules
42 changes: 19 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
[![Maintainability](https://api.codeclimate.com/v1/badges/0001287428a20bef03ad/maintainability)](https://codeclimate.com/github/CentML/DeepView.Explore/maintainability)
[![Test Coverage](https://api.codeclimate.com/v1/badges/0001287428a20bef03ad/test_coverage)](https://codeclimate.com/github/CentML/DeepView.Explore/test_coverage)

# VSCode Plugin for DeepView
# DeepView Explore
![DeepView](https://raw.githubusercontent.com/CentML/DeepView.Explore/main/deepview-explore/react-ui/public/resources/deepview.png)

![Demo GIF](https://raw.githubusercontent.com/CentML/mltools-vscode/jun07-usability-improvements/images/demo.gif)

## Documentation
https://docs.centml.ai/index.html
DeepView provides an integrated experience which allows ML practioners to
- Visually identify model bottlenecks
- Perform rapid iterative profiling
- Understand energy consumption and environmental impacts of training jobs
- Predict deployment time and cost to cloud hardware

## Installation
Installation consists of two parts: the front-end UI (this repository) and [DeepView.Profile](https://github.com/CentML/DeepView.Profile) (the backend), which needs to be installed separately.
Expand All @@ -29,9 +31,9 @@ To install, either:
Once you have the vsix file, run `code --install-extension deepview-explore-*.vsix` to install the extension.
**Note: the file [build_vsix_dev.sh] is only to be used for development**

**Adding cloud instances to the Deployment Tab:** You can include information about the instances that you use through the extension settings. There you will find an option named **providers** that accepts a list of urls separated by commas. Each url must be a JSON file that follows the schema specified here : [schema](skyline-vscode/react-ui/src/schema/CloudProvidersSchema.js).<br/>
**Adding cloud instances to the Deployment Tab:** You can include information about the instances that you use through the extension settings. There you will find an option named **providers** that accepts a list of urls separated by commas. Each url must be a JSON file that follows the schema specified here: [schema](deepview-explore/react-ui/src/schema/CloudProvidersSchema.js).<br/>
Additionally, you need to add the necessary access so the extension can read the file.<br/>
You can use an AWS S3 bucket to store your files. Change CORS settings in Permissions tab.
You can use an AWS S3 bucket to store your files. Note that you need to update the CORS settings in Permissions tab to enable the extension to read your file.

**CORS requirements**:
```
Expand All @@ -50,29 +52,23 @@ You can use an AWS S3 bucket to store your files. Change CORS settings in Permis
}
]
```
and allow public access to the file

This is our [file](https://deepview-explorer-public.s3.amazonaws.com/vscode-cloud-providers/providers.json) that you can use as an example.





### Backend Installation
This plugin requires DeepView.Profile (the installation instruction for which can be found [here](https://github.com/CentML/DeepView.Profile)) and (optionally) DeepView.Predict (used to extrapolate GPU runtimes, instructions found [here](https://github.com/CentML/DeepView.Predict)). **DeepView.Profile must be launched before running this extension.**

After installation, please make note of the path to the `DeepView.Profile` binary. To do so, run `which deepview` after ensuring that the `DeepView.Profile` binary works. This path is different depending on how the backend was installed. Default installation from PyPI will place the binary to `/usr/bin/deepview`, however if you're running the backend in virtual environment it will be in a different location. **You need to launch `DeepView.Profile` before running this extension.**
This plugin requires DeepView.Profile (the installation instruction for which can be found [here](https://github.com/CentML/DeepView.Profile)) **You need to launch `DeepView.Profile` before running this extension.**

## Usage example
1. Open one of the examples DNN project examples, i.e. [Resnet](https://github.com/CentML/DeepView.Profile/tree/main/examples/resnet) from DeepView.Profile in VSCode
2. (Optional) You can add other external cloud instances using the **providers** option in the extension
3. Press `Ctrl+Shift+P`, then select `Deepview` from the dropdown list.
3. Click on `Begin Analysis`.
1. Run DeepView.Profile
2. Open one of the examples DNN project examples, i.e. [Resnet](https://github.com/CentML/DeepView.Profile/tree/main/examples/resnet) from DeepView.Profile in VSCode
3. (Optional) You can add other external cloud instances using the **providers** option in the extension
4. Press `Ctrl+Shift+P`, then select `DeepView` from the dropdown list.
5. Click on `Begin Analysis`.

## Disabling telemetry
If you do not want to send usage data to CentML, you can set isTelemetryEnabled setting to "No".

You can set the value by going to File > Preferences > Settings (On macOS: Code > Preferences > Settings), and search for telemetry. Then set the value in Deepview > Is Telemetry Enabled. This will disable all telemetry events.
You can set the value by going to File > Preferences > Settings (On macOS: Code > Preferences > Settings), and search for telemetry. Then set the value in DeepView > Is Telemetry Enabled. This will disable all telemetry events.

As well, DeepView respects VSCode's telemetry levels. IF telemetry.telemetryLevel is set to off, then no telemetry events will be sent to CentML, even if deepview.telemetry.enabled is set to true. If telemetry.telemetryLevel is set to error or crash, only events containing an error or errors property will be sent to CentML.

Expand All @@ -95,9 +91,9 @@ apt install protobuf-compiler
```
1. Install project dependencies
```zsh
cd skyline-vscode/react-ui && npm install
cd deepview-explore/react-ui && npm install
cd ../..
cd skyline-vscode/skyline-vscode && npm install
cd deepview-explore/deepview-explore && npm install
```
1. Compile protobuf files:
```zsh
Expand All @@ -107,7 +103,7 @@ apt install protobuf-compiler
## Run extension
Start VSCode in the plugin source directory:
```
cd skyline-vscode/skyline-vscode;
cd deepview-explore/deepview-explore;
code .
```
Press `F5` to compile and run the extension. When the extension window appears, open of the [example projects](https://github.com/CentML/DeepView.Profile/tree/main/examples). Then press `Ctrl-Shift-P` then select `Begin Analysis`.
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
5 changes: 5 additions & 0 deletions deepview-explore/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Change Log

## v0.1.0

- Initial release
File renamed without changes.
55 changes: 55 additions & 0 deletions deepview-explore/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
[![Maintainability](https://api.codeclimate.com/v1/badges/0001287428a20bef03ad/maintainability)](https://codeclimate.com/github/CentML/DeepView.Explore/maintainability)
[![Test Coverage](https://api.codeclimate.com/v1/badges/0001287428a20bef03ad/test_coverage)](https://codeclimate.com/github/CentML/DeepView.Explore/test_coverage)

# DeepView Explore
![DeepView](https://raw.githubusercontent.com/CentML/DeepView.Explore/main/deepview-explore/react-ui/public/resources/deepview.png)

DeepView provides an integrated experience which allows ML practioners to
- Visually identify model bottlenecks
- Perform rapid iterative profiling
- Understand energy consumption and environmental impacts of training jobs
- Predict deployment time and cost to cloud hardware

### Backend Installation
This plugin requires DeepView.Profile to be installed for which can be found [here](https://github.com/CentML/DeepView.Profile) **You need to launch `DeepView.Profile` before running this extension.**

## Usage example
1. Run DeepView.Profile
2. Open one of the examples DNN project examples, i.e. [Resnet](https://github.com/CentML/DeepView.Profile/tree/main/examples/resnet) from DeepView.Profile in VSCode
3. (Optional) You can add other external cloud instances using the **providers** option in the extension
4. Press `Ctrl+Shift+P`, then select `DeepView` from the dropdown list.
5. Click on `Begin Analysis`.

## Disabling telemetry
If you do not want to send usage data to CentML, you can set isTelemetryEnabled setting to "No".

You can set the value by going to File > Preferences > Settings (On macOS: Code > Preferences > Settings), and search for telemetry. Then set the value in DeepView > Is Telemetry Enabled. This will disable all telemetry events.

As well, DeepView respects VSCode's telemetry levels. IF telemetry.telemetryLevel is set to off, then no telemetry events will be sent to CentML, even if deepview.telemetry.enabled is set to true. If telemetry.telemetryLevel is set to error or crash, only events containing an error or errors property will be sent to CentML.

**Adding cloud instances to the Deployment Tab:** You can include information about the instances that you use through the extension settings. There you will find an option named **providers** that accepts a list of urls separated by commas. Each url must be a JSON file that follows the schema specified here: [schema](deepview-explore/react-ui/src/schema/CloudProvidersSchema.js).<br/>
Additionally, you need to add the necessary access so the extension can read the file.<br/>
You can use an AWS S3 bucket to store your files. Note that you need to update the CORS settings in Permissions tab to enable the extension to read your file.

**CORS requirements**:
```
[
{
"AllowedHeaders": [],
"AllowedMethods": [
"GET"
],
"AllowedOrigins": [
"http://*",
"https://*",
"vscode-webview://*"
],
"ExposeHeaders": []
}
]
```

This is our [file](https://deepview-explorer-public.s3.amazonaws.com/vscode-cloud-providers/providers.json) that you can use as an example.

## Additional Documentation
Documentation can be found at https://docs.centml.ai/index.html
File renamed without changes.
6 changes: 3 additions & 3 deletions skyline-vscode/package.json → deepview-explore/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "deepview-explore",
"displayName": "deepview-explore",
"displayName": "DeepView Explore",
"publisher": "centml",
"repository": "https://github.com/CentML/DeepView.Explore",
"description": "",
Expand All @@ -20,11 +20,11 @@
"commands": [
{
"command": "deepview-explore.cmd_begin_analyze",
"title": "Deepview"
"title": "DeepView"
}
],
"configuration": {
"title": "Deepview",
"title": "DeepView",
"properties": {
"deepview.address": {
"type": "string",
Expand Down
File renamed without changes.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ const WelcomeScreen = ({ analysisState, vscodeApi }) => {
<Card.Title></Card.Title>
<Card.Body>
<Stack gap={3}>
<Image src="resources/skyline.svg" width="400px"></Image>
<Image src="resources/deepview.png" width="400px"></Image>
{analysisState && (
<>
<ProjectInfo
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ export function activate(context: vscode.ExtensionContext) {

const panel = vscode.window.createWebviewPanel(
'deepview',
"Deepview",
"DeepView",
vscode.ViewColumn.Beside,
{
enableScripts: true,
Expand Down
File renamed without changes.
File renamed without changes.
4 changes: 2 additions & 2 deletions scripts/build_vsix.sh
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
#!/bin/bash

# Build react UI
pushd skyline-vscode/react-ui && \
pushd deepview-explore/react-ui && \
npm install && \
npm run build && \
popd;

# Build backend
pushd skyline-vscode && \
pushd deepview-explore && \
npm install && \
pushd src/protobuf &&
make && make old && \
Expand Down
4 changes: 2 additions & 2 deletions scripts/prepare_release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ check_repo
echo ""
check_tools

# Move to skyline-vscode source code dir
cd ../skyline-vscode
# Move to deepview-explore source code dir
cd ../deepview-explore
echo -en "${COLOR_YELLOW}Release increment: [patch], minor, major ${COLOR_NC}"
read -r
case $REPLY in
Expand Down
9 changes: 0 additions & 9 deletions skyline-vscode/CHANGELOG.md

This file was deleted.

1 change: 0 additions & 1 deletion skyline-vscode/README.md

This file was deleted.

Loading