-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathc4de80f8.d5f32639.js
1 lines (1 loc) · 5.86 KB
/
c4de80f8.d5f32639.js
1
(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{118:function(e,n,t){"use strict";t.r(n),t.d(n,"frontMatter",(function(){return a})),t.d(n,"metadata",(function(){return o})),t.d(n,"rightToc",(function(){return c})),t.d(n,"default",(function(){return u}));var r=t(2),i=t(6),l=(t(0),t(125)),a={id:"install",title:"Installing Skyline"},o={id:"install",isDocsHomePage:!1,title:"Installing Skyline",description:"Requirements",source:"@site/docs/install.md",permalink:"/docs/install",editUrl:"https://github.com/skylineprof/skyline/edit/master/website/docs/install.md",sidebar:"sidebar",previous:{title:"Miscellaneous",permalink:"/docs/misc"},next:{title:"Getting Started",permalink:"/docs/getting-started"}},c=[{value:"Requirements",id:"requirements",children:[]},{value:"Installation",id:"installation",children:[]}],s={rightToc:c};function u(e){var n=e.components,t=Object(i.a)(e,["components"]);return Object(l.b)("wrapper",Object(r.a)({},s,t,{components:n,mdxType:"MDXLayout"}),Object(l.b)("h3",{id:"requirements"},"Requirements"),Object(l.b)("p",null,"Skyline works with GPU-based neural networks that are implemented in PyTorch.\nTo run Skyline, you need:"),Object(l.b)("ul",null,Object(l.b)("li",{parentName:"ul"},"A system equipped with an NVIDIA GPU"),Object(l.b)("li",{parentName:"ul"},"PyTorch 1.1.0+"),Object(l.b)("li",{parentName:"ul"},"Python 3.6+")),Object(l.b)("p",null,"Note that Skyline only supports profiling models that are trained using a GPU."),Object(l.b)("p",null,"Skyline consists of two components: (i) the Skyline profiler, and (ii) a plugin\nfor Atom. The Skyline profiler has only been tested on Ubuntu 18.04, but should\nalso work on other versions of Ubuntu that have Python 3.6+. The Skyline plugin\nhas been tested on both Ubuntu 18.04 and macOS Mojave (10.14) with the latest\nversion of Atom."),Object(l.b)("h3",{id:"installation"},"Installation"),Object(l.b)("p",null,"For interactive profiling (i.e. Skyline inside Atom), you need both components.\nIf you only plan to use Skyline for ",Object(l.b)("a",Object(r.a)({parentName:"p"},{href:"/docs/standalone"}),"Standalone Profiling"),", you\nonly need the Skyline profiler component."),Object(l.b)("h4",{id:"skyline-profiler"},"Skyline Profiler"),Object(l.b)("p",null,"The Skyline profiler can be installed using ",Object(l.b)("inlineCode",{parentName:"p"},"pip"),". In your shell, run:"),Object(l.b)("pre",null,Object(l.b)("code",Object(r.a)({parentName:"pre"},{className:"language-bash"}),"pip install skyline-cli\n")),Object(l.b)("p",null,"As with most Python packages, we recommend installing Skyline inside a\n",Object(l.b)("inlineCode",{parentName:"p"},"virtualenv"),". After installing the Skyline profiler, you will be able to\ninvoke it by running ",Object(l.b)("inlineCode",{parentName:"p"},"skyline")," in your shell."),Object(l.b)("h4",{id:"skyline-atom-plugin"},"Skyline Atom Plugin"),Object(l.b)("p",null,"The Skyline Atom plugin can be installed using ",Object(l.b)("inlineCode",{parentName:"p"},"apm")," (the Atom package\nmanager), which should be automatically installed after you install\n",Object(l.b)("a",Object(r.a)({parentName:"p"},{href:"https://atom.io"}),"Atom"),". In your shell, run:"),Object(l.b)("pre",null,Object(l.b)("code",Object(r.a)({parentName:"pre"},{className:"language-bash"}),"apm install skyline\n")),Object(l.b)("p",null,"You can alternatively install Skyline by using Atom's preferences pane and\nsearching for ",Object(l.b)("inlineCode",{parentName:"p"},"skyline")," under the Install section."),Object(l.b)("p",null,"After installing the Skyline plugin, the ",Object(l.b)("inlineCode",{parentName:"p"},"Skyline:Toggle"),' command should be\navailable in your command palette. A Skyline sub-menu should also appear\nunder the "Packages" menu.'))}u.isMDXComponent=!0},125:function(e,n,t){"use strict";t.d(n,"a",(function(){return p})),t.d(n,"b",(function(){return y}));var r=t(0),i=t.n(r);function l(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function o(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach((function(n){l(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function c(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},l=Object.keys(e);for(r=0;r<l.length;r++)t=l[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)t=l[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}var s=i.a.createContext({}),u=function(e){var n=i.a.useContext(s),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},p=function(e){var n=u(e.components);return i.a.createElement(s.Provider,{value:n},e.children)},b={inlineCode:"code",wrapper:function(e){var n=e.children;return i.a.createElement(i.a.Fragment,{},n)}},m=i.a.forwardRef((function(e,n){var t=e.components,r=e.mdxType,l=e.originalType,a=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),p=u(t),m=r,y=p["".concat(a,".").concat(m)]||p[m]||b[m]||l;return t?i.a.createElement(y,o(o({ref:n},s),{},{components:t})):i.a.createElement(y,o({ref:n},s))}));function y(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var l=t.length,a=new Array(l);a[0]=m;var o={};for(var c in n)hasOwnProperty.call(n,c)&&(o[c]=n[c]);o.originalType=e,o.mdxType="string"==typeof e?e:r,a[1]=o;for(var s=2;s<l;s++)a[s]=t[s];return i.a.createElement.apply(null,a)}return i.a.createElement.apply(null,t)}m.displayName="MDXCreateElement"}}]);