2019.04.17

브라우저에 파이썬 통합한 모질라 파이어다이드 프로젝트

Paul Krill | InfoWorld
모질라의 파이어다이드 프로젝트(Pyodide project)가 파이썬의 데이터 과학 스택을 웹 브라우저 웹어셈블리에컴파일해 추가하는 실험을 진행했다. 파이어다이드는 파이썬 넘피(Numpy) 과학 컴퓨팅 라이브러리, 팬다스(Pandas) 데이터 분석 라이브러리, 수학과 과학, 엔지니어링용 사이파이(SciPy) 라이브러리 일부를 웹어셈블리 형태로 구현했다. 파이썬의 Matplotlib 플로팅 라이브러리까지 포함돼있다.

브라우저 단위에서 데이터 과학 작업을 지원하는 아이오다이드(Iodide) 프로젝트와 밀접하게 연관된 파이어다이드는 독자적으로도 활용될 수 있고, 개발자가 브라우저에서 파이썬을 실행하는 환경이면 어디에서든 사용할 수 있다. 자바스크립트와 파이썬 간에서 객체를 변환해 파이썬이 웹 API에 완전한 접속 권한을 얻을 수 있다. 기본 데이터 유형 변환도 가능하지만, 자바스크립트 유형 배열은 파이썬 memoryviews으로 변환된다.

파이어다이드 프로젝트가 시작된 것은 브라우저 언어인 자바스크립트에 성숙한 데이터 과학 라이브러리가 갖춰져 있지 않아서다. 연산자 오버로딩 같은 수치 컴퓨팅 기능도 빠져 있다. 모질라가 바라는 것은 자바 스크립트의 데이터 과학 생태계의 발전이겠지만, 브라우저에 성숙한 파이썬 과학 스택을 통합하는 작업도 궁극적으로는 유용할 것이다.

파이어다이드는 Emscripten으로 표준 파이썬 인터프리터인 CPython과 넘피 등의 과학 컴퓨팅 패키지를 웹어셈블리 바이너리 형식으로 컴파일한다. 웹 브라우저에서 자바스크립트와 함께 실행된다. 파이어다이드를 브라우저에 로딩하려면 다음을 다운로드받아야 한다.

-    웹어셈블리로 컴파일된 파이썬 인터프리터
-    가상 파일 시스템처럼 시스템 성능을 에뮬레이트하는 Emscripten에서 자바스크립트
-    파이썬 표준 라이브러리를 포함한 파이썬 인터프리터에 필요한 모든 파일

파일 크기가 클 수도 있지만, 이들 패키지는 한번만 다운로드하면 브라우저 캐시에 저장된다. 아이오다이드 웹 사이트에서 데모를 실행해 파이어다이드를 시험해볼 수 있다. 50MB 정도의 다운로드가 필요하다. 파이어다이드 구축 안내는 기트허브에서 찾을 수 있다. editor@itworld.co.kr 


2019.04.17

브라우저에 파이썬 통합한 모질라 파이어다이드 프로젝트

Paul Krill | InfoWorld
모질라의 파이어다이드 프로젝트(Pyodide project)가 파이썬의 데이터 과학 스택을 웹 브라우저 웹어셈블리에컴파일해 추가하는 실험을 진행했다. 파이어다이드는 파이썬 넘피(Numpy) 과학 컴퓨팅 라이브러리, 팬다스(Pandas) 데이터 분석 라이브러리, 수학과 과학, 엔지니어링용 사이파이(SciPy) 라이브러리 일부를 웹어셈블리 형태로 구현했다. 파이썬의 Matplotlib 플로팅 라이브러리까지 포함돼있다.

브라우저 단위에서 데이터 과학 작업을 지원하는 아이오다이드(Iodide) 프로젝트와 밀접하게 연관된 파이어다이드는 독자적으로도 활용될 수 있고, 개발자가 브라우저에서 파이썬을 실행하는 환경이면 어디에서든 사용할 수 있다. 자바스크립트와 파이썬 간에서 객체를 변환해 파이썬이 웹 API에 완전한 접속 권한을 얻을 수 있다. 기본 데이터 유형 변환도 가능하지만, 자바스크립트 유형 배열은 파이썬 memoryviews으로 변환된다.

파이어다이드 프로젝트가 시작된 것은 브라우저 언어인 자바스크립트에 성숙한 데이터 과학 라이브러리가 갖춰져 있지 않아서다. 연산자 오버로딩 같은 수치 컴퓨팅 기능도 빠져 있다. 모질라가 바라는 것은 자바 스크립트의 데이터 과학 생태계의 발전이겠지만, 브라우저에 성숙한 파이썬 과학 스택을 통합하는 작업도 궁극적으로는 유용할 것이다.

파이어다이드는 Emscripten으로 표준 파이썬 인터프리터인 CPython과 넘피 등의 과학 컴퓨팅 패키지를 웹어셈블리 바이너리 형식으로 컴파일한다. 웹 브라우저에서 자바스크립트와 함께 실행된다. 파이어다이드를 브라우저에 로딩하려면 다음을 다운로드받아야 한다.

-    웹어셈블리로 컴파일된 파이썬 인터프리터
-    가상 파일 시스템처럼 시스템 성능을 에뮬레이트하는 Emscripten에서 자바스크립트
-    파이썬 표준 라이브러리를 포함한 파이썬 인터프리터에 필요한 모든 파일

파일 크기가 클 수도 있지만, 이들 패키지는 한번만 다운로드하면 브라우저 캐시에 저장된다. 아이오다이드 웹 사이트에서 데모를 실행해 파이어다이드를 시험해볼 수 있다. 50MB 정도의 다운로드가 필요하다. 파이어다이드 구축 안내는 기트허브에서 찾을 수 있다. editor@itworld.co.kr 


X