You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To use Skyline in your project, you need to first write an entry point file, which is a regular Python file that describes how your model is created and trained. See the [Entry Point](docs/providers.md) for more information.
65
+
To use DeepView.Profile in your project, you need to first write an entry point file, which is a regular Python file that describes how your model is created and trained. See the [Entry Point](docs/providers.md) for more information.
66
66
67
67
Once your entry point file is ready, there are two ways to profile interactive profiling and standalone profiling.
68
68
@@ -72,11 +72,11 @@ poetry run skyline interactive
72
72
```
73
73
74
74
### Standalone Profiling
75
-
Standalone profiling is useful when you just want access to Skyline's profiling functionality. Skyline will save the profiling results (called a "report") into a [SQLite database file](https://www.sqlite.org/) that you can then query yourself. We describe the database schema for Skyline's run time and memory reports in the [Run Time Report Format](docs/run-time-report.md) and [Memory Report Format](docs/memory-report.md) pages respectively.
75
+
Standalone profiling is useful when you just want access to DeepView.Profile's profiling functionality. DeepView.Profile will save the profiling results (called a "report") into a [SQLite database file](https://www.sqlite.org/) that you can then query yourself. We describe the database schema for DeepView.Profile's run time and memory reports in the [Run Time Report Format](docs/run-time-report.md) and [Memory Report Format](docs/memory-report.md) pages respectively.
76
76
77
-
To have Skyline perform run time profiling, you use the `skyline time`
77
+
To have DeepView.Profile perform run time profiling, you use the `skyline time`
78
78
subcommand. In addition to the entry point file, you also need to specify the
79
-
file where you want Skyline to save the run time profiling report using the
79
+
file where you want DeepView.Profile to save the run time profiling report using the
80
80
`--output` or `-o` flag.
81
81
82
82
```zsh
@@ -115,11 +115,11 @@ See [Releases](https://github.com/UofT-EcoSystem/skyline/releases)
115
115
116
116
<h2id="meta">Meta</h2>
117
117
118
-
Skyline began as a research project at the [University of Toronto](https://web.cs.toronto.edu) in collaboration with [Geofrey Yu](mailto:[email protected]), [Tovi Grossman](https://www.tovigrossman.com) and [Gennady Pekhimenko](https://www.cs.toronto.edu/~pekhimenko/).
118
+
DeepView.Profile began as a research project at the [University of Toronto](https://web.cs.toronto.edu) in collaboration with [Geofrey Yu](mailto:[email protected]), [Tovi Grossman](https://www.tovigrossman.com) and [Gennady Pekhimenko](https://www.cs.toronto.edu/~pekhimenko/).
119
119
120
120
The accompanying research paper appears in the proceedings of UIST'20. If you are interested, you can read a preprint of the paper [here](https://arxiv.org/pdf/2008.06798.pdf).
121
121
122
-
If you use Skyline in your research, please consider citing our paper:
122
+
If you use DeepView.Profile in your research, please consider citing our paper:
123
123
124
124
```bibtex
125
125
@inproceedings{skyline-yu20,
@@ -136,4 +136,4 @@ It is distributed under Apache 2.0 license. See [LICENSE](LICENSE) and [NOTICE](
136
136
137
137
<h2id="contributing">Contributing</h2>
138
138
139
-
Check out [CONTRIBUTING.md](CONTRIBUTING.md) for more information on how to help with Skyline.
139
+
Check out [CONTRIBUTING.md](CONTRIBUTING.md) for more information on how to help with DeepView.Profile.
Copy file name to clipboardExpand all lines: docs/memory-report.md
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
-
This page describes the database schema of the memory report that is generated by Skyline's `memory` subcommand. Recall that Skyline's reports (memory and run time) are [SQLite database files](https://www.sqlite.org/).
1
+
This page describes the database schema of the memory report that is generated by DeepView.Profile's `memory` subcommand. Recall that DeepView.Profile's reports (memory and run time) are [SQLite database files](https://www.sqlite.org/).
2
2
3
-
**NOTE:**Skyline's memory profiling is for GPU memory only.
3
+
**NOTE:**DeepView.Profile's memory profiling is for GPU memory only.
4
4
5
5
## Overview
6
6
7
-
Skyline tracks the memory usage associated with a model's *weights* and *activations*. Skyline will also report the peak amount of memory allocated during a training iteration.
7
+
DeepView.Profile tracks the memory usage associated with a model's *weights* and *activations*. DeepView.Profile will also report the peak amount of memory allocated during a training iteration.
8
8
9
-
Just like the run time report, Skyline also includes the stack trace associated with each activation or weight in the report. Skyline only includes the stack frames associated with files inside your project (i.e. files under your project's root directory).
9
+
Just like the run time report, DeepView.Profile also includes the stack trace associated with each activation or weight in the report. DeepView.Profile only includes the stack frames associated with files inside your project (i.e. files under your project's root directory).
10
10
11
11
## Tables
12
12
@@ -42,7 +42,7 @@ CREATE TABLE entry_types (
42
42
name TEXTNOT NULL
43
43
);
44
44
```
45
-
This is a table that stores mappings of Skyline's memory entry types (activations, weights) to numeric identifiers. Skyline maps weights to an entry type of `1`, and activations to an entry type of `2`.
45
+
This is a table that stores mappings of DeepView.Profile's memory entry types (activations, weights) to numeric identifiers. DeepView.Profile maps weights to an entry type of `1`, and activations to an entry type of `2`.
46
46
47
47
### `stack_correlation`
48
48
@@ -73,7 +73,7 @@ CREATE TABLE stack_frames (
73
73
```
74
74
This table holds the stack frames associated with a memory usage entry (both weights and activations). The `correlation_id` column is a foreign key that references the `correlation_id` in the `stack_correlation` table. File paths stored in the `file_path` column will be relative to the project's root directory and line numbers are 1-based.
75
75
76
-
**NOTE:**Skyline does not add an explicit foreign key constraint to the `correlation_id` column.
76
+
**NOTE:**DeepView.Profile does not add an explicit foreign key constraint to the `correlation_id` column.
77
77
78
78
**Ordering.**
79
79
There may be multiple stack frames associated with any given memory entry (i.e. any given `correlation_id`). The `ordering` column is used to keep track of the ordering among stack frames that share the same `correlation_id`. When sorted in ascending order by the `ordering` column, the stack frames will be ordered from most-specific (i.e. *closest* to the weight or operation responsible for the activation) to least-specific (i.e. *farthest* from the weight or operation responsible for the activation).
@@ -90,4 +90,4 @@ CREATE TABLE misc_sizes (
90
90
);
91
91
```
92
92
93
-
This table holds any miscellaneous memory usage information that is reported by Skyline. Currently, Skyline only uses this table to report the peak memory usage during one training iteration. This memory usage is reported using the `peak_usage_bytes` key.
93
+
This table holds any miscellaneous memory usage information that is reported by DeepView.Profile. Currently, DeepView.Profile only uses this table to report the peak memory usage during one training iteration. This memory usage is reported using the `peak_usage_bytes` key.
One important thing to highlight is our use of a wrapper `ModelWithLoss` module. Skyline only provides breakdowns for operations that run inside the module returned by the model provider. We included the loss function in this wrapper module to have Skyline include it in the breakdown. We could have also placed the loss function call in the `iteration` function.
98
+
One important thing to highlight is our use of a wrapper `ModelWithLoss` module. DeepView.Profile only provides breakdowns for operations that run inside the module returned by the model provider. We included the loss function in this wrapper module to have DeepView.Profile include it in the breakdown. We could have also placed the loss function call in the `iteration` function.
99
99
100
100
You can place these provider functions either in a new file or directly in `model.py`. Whichever file contains the providers will be your project's entry point file. In this example, we defined the providers in a separate file called `entry_point.py` inside `my_project`.
-**Client:** The local machine where you run the Skyline plugin.
5
-
-**Server:** The remote machine where you want to run the Skyline profiler.
4
+
-**Client:** The local machine where you run the DeepView.Explore plugin.
5
+
-**Server:** The remote machine where you want to run the DeepView.Profile.
6
6
7
7
## Prerequisites
8
8
**SSH Access.**
9
9
At a minimum, you need SSH access to a server that allows SSH tunnelling. If the server machine exposes ports then it does not need to support SSH tunnelling.
10
10
11
-
**Skyline and Habitat.**
12
-
Install Skyline and (optionally Habitat) on your server to allow remote profiling.
11
+
**DeepView.Profile and DeepView.Predict.**
12
+
Install DeepView.Profile and (optionally DeepView.Predict) on your server to allow remote profiling.
This extension allows users to connect to a remote machine and run extensions remotely. The extension handles most of the heavy lifting so it makes it easy to use the Skyline plugin on remote machines.
15
+
This extension allows users to connect to a remote machine and run extensions remotely. The extension handles most of the heavy lifting so it makes it easy to use DeepView.Explore on remote machines.
16
16
17
-
**Installing the Skyline Plugin on the Server**
18
-
To install the Skyline plugin on the server, take the following steps.
17
+
**Installing the DeepView.Explore on the Server**
18
+
To install the DeepView.Explore plugin on the server, take the following steps.
19
19
1. Connect to your server via SSH.
20
20
2. Get the VSIX file following the installation instructions. Take note the path to the VSIX file.
21
21
2. Open VSCode on your client and connect to your server.
@@ -25,7 +25,7 @@ To install the Skyline plugin on the server, take the following steps.
25
25
## Starting a Remote Profiling Session
26
26
27
27
### Starting the Skyline Profiler
28
-
The Skyline Profiler needs to running on the server to enable the plugin. You can connect to the server via SSH and start the Skyline profiler by running the `skyline interactive` command as usual.
28
+
DeepView.Profile needs to running on the server to enable the plugin. You can connect to the server via SSH and start DeepView.Profile by running the `skyline interactive` command as usual.
29
29
30
30
```zsh
31
31
poetry run skyline interactive
@@ -34,8 +34,8 @@ poetry run skyline interactive
34
34
If you want to use a different port, you can use the `--port` flag to tell the profiler to listen on a different port.
35
35
36
36
```zsh
37
-
poetry run skyline interactive
37
+
poetry run skyline interactive --port portNumber
38
38
```
39
39
40
-
### Starting the Skyline Plugin
41
-
Launch VSCode and open Skyline by running the Skyline command in the command palette (Ctrl-Shift-P on Linux/Windows, ⌘-Shift-P on macOS). Select your project root and begin profiling.
40
+
### Starting DeepView.Explore
41
+
Launch VSCode and open DeepView.Explore by running the Skyline command in the command palette (Ctrl-Shift-P on Linux/Windows, ⌘-Shift-P on macOS). Select your project root and begin profiling.
Copy file name to clipboardExpand all lines: docs/run-time-report.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
-
This page describes the database schema of the run time report that is generated by Skyline's `time` subcommand. Recall
2
-
that Skyline's reports (memory and run time) are [SQLite database files](https://www.sqlite.org/).
1
+
This page describes the database schema of the run time report that is generated by DeepView.Profile's `time` subcommand. Recall
2
+
that DeepView.Profile's reports (memory and run time) are [SQLite database files](https://www.sqlite.org/).
3
3
4
4
## Overview
5
5
6
-
Skyline's run time report contains a breakdown of the run times of each operation that runs in one training iteration. Skyline only tracks the
6
+
DeepView.Profile's run time report contains a breakdown of the run times of each operation that runs in one training iteration. DeepView.Profile only tracks the
7
7
operations that execute as a part of either the forward and backward pass.
8
8
9
-
For each tracked operation, Skyline also includes the stack trace leading to that operation. Skyline only includes the stack frames associated with files inside your project (i.e. files under your project's root directory).
9
+
For each tracked operation, DeepView.Profile also includes the stack trace leading to that operation. DeepView.Profile only includes the stack frames associated with files inside your project (i.e. files under your project's root directory).
10
10
11
11
## Tables
12
12
@@ -23,7 +23,7 @@ CREATE TABLE run_time_entries (
23
23
24
24
This table holds the measured run time(s) of each tracked operation. Each entry in this table represents one operation *instance* (i.e. one invocation of an operation). The columns in this table are self-explanatory.
25
25
26
-
**NOTE:**Skyline reports run times in milliseconds.
26
+
**NOTE:**DeepView.Profile reports run times in milliseconds.
27
27
28
28
**Backward Pass.**
29
29
Note that not every operation is necessarily involved in the backward pass. When an operation is not in the backward pass, `backward_ms` will be `NULL`.
@@ -43,7 +43,7 @@ CREATE TABLE stack_frames (
43
43
44
44
This table holds the stack frames associated with each tracked operation. The `entry_id` column is a foreign key that references the `id` column in `run_time_entries`.
45
45
46
-
**NOTE**Skyline does not add an explicit foreign key constraint to the `entry_id` column.
46
+
**NOTE**DeepView.Profile does not add an explicit foreign key constraint to the `entry_id` column.
47
47
48
48
**Ordering.**
49
49
There may be multiple stack frames associated with any given tracked operation (i.e. any given `entry_id`). The `ordering` column is used to keep track of the ordering among stack frames that share the same `entry_id`. When sorted in ascending order by the `ordering` column, the stack frames will be ordered from most-specific (i.e. *closest* to the operation's call site) to least-specific (i.e. *farthest* from the operation's call site).
0 commit comments