Matlab online

15분간 사용자의 반응이 없으면 세션 종료… 물론 마우스로 이것저것 클릭해보는 걸로 세션을 유지할 수는 있지만, 오랜시간 돌려놓고 딴짓하다가 나중에 결과 확인하는 건 안 되는 걸로… 15분 내에 끝나는 계산은 계산결과 저장은 된다만, 넘어가면 그냥 계산을 종료하는 것 같다. 마우스 매크로라도 쓰면 되려나.

Matlab online 의 performance test1

저번에 새로 산 노트북에 설치된 matlab과 matlab online의 속도 비교를 inverse matrix 구하는 연산을 반복해서 얼마나 차이나나 해봤는데, 새 노트북보다 matlab online쪽이 20% 정도 더 빨랐다.
이번에는 ode solver를 이용해서 stiff한 문제를 풀게 해 봤다. 예전 노트북, 새 노트북, matlab onilne에서 돌려봤는데, 좀 복잡한 비선형 ODE에 조건도 이것저것 들어가 있고, 최적화된 코드도 아니긴 한데… 셋 다 같은 조건이니…

예전 노트북에선 high performance 모드에서 36초,
새 노트북에선 balanced 에서 32초, high performance에서 19초…
matlab online에선 31초 정도 걸렸다.

약간 놀라운 건, 예전 노트북에 3세대 i7이 생각보다 쓸만하다는 점. High performace mode로 해놓으면 cpu clock이 최대에서 고정이라 새 노트북에선 온도가 좀 높고 팬도 시끄러운데, 오래된 thinkpad는 high performance에서 최신 cpu보다 clock이 조금 낮지만 열 배출이 원활해서 온도가 그리 올라가지 않는다.

새 노트북은 balanced mode에서는 약간 나아진 성능… 물론 6코어의 성능은 좀 대단하긴 하다.

matlab online은… 전에 새 노트북 balanced와 비교해서 조금 나았었는데, 이번에는 그냥 그리 빠르진 않다. 다만 내 컴퓨터 자원을 쓰는게 아니라 cpu 점유율도 낮아서 노트북을 쾌적하게 쓸 수 있다.
단점은 plot으로 동영상 만드는게 안 되네…; 다른 방법을 찾아야하나.
저번에 찾아보니 올릴 수 있는 파일의 용량에 제한이 있어서 큰 데이터 셋을 올릴 수 없다고 하던데, 내부에서 그냥 만들어지는 파일은 메모리를 최대 얼마나 제공하는지 아직도 잘 모르겠다.

Matlab online 소식

 

https://matlab.mathworks.com/
학교에서 Matlab license를 제공하고 있다만 아마도 Matlab online을 사용할 수 있을 거다. Matlab online을 이용하면 Matlab 을 설치하지 않고 웹브라우져를 통해서 Matlab을 사용할 수 있다. iOS와 안드로이드에서는 Matlab mobile 앱을 이용해서 같은 기능을 사용할 수 있다.

cloud 기능이 있어서 다른 사람들과 일을 공유하거나, 다른 컴퓨터에서 접속해서 코드를 수정하는 등이 가능하다. 가장 궁금했던 건 얼마나 빠른 속도로 계산을 해주냐인데, 메트릭스 연산으로 비교를 해보니 올해 새로 구입한 i7 6core 노트북보다 빠른 속도로 계산해준다. 대략 20% 정도는 더 빠른 것 같다. 낮은 연산 성능의 가벼운 노트북 등을 이용한다면 꽤 괜찮을 것 같다.

아쉬운 점도 좀 있는데, Matlab online 접속 시간이 좀 길다는 점과 웹브라우저의 cpu 점유율이 생각보다는 좀 높다는 점. 내 노트북에서 10~15% 정도의 점유율이 나오는데, 듀얼코어 노트북에선 25% 정도의 cpu 점유가 생긴다. 낮은 성능의 노트북에서는 cpu 점유율이 더 높을 것 같다.

워크스테이션이 있다면 Matlab online의 활용도가 좀 떨어지는게, 내 노트북이 하이엔드급 노트북이긴 하지만 이것보다 조금 더 빠른 정도의 계산 속도가 워크스테이션을 대체할 수는 없다. 짧은 계산의 경우는 중간에 웹브라우저 탭을 닫아도 다시 연결해보면 연산이 계속 되었다는 건 확인 했는데, 웹브라우저를 종료할 경우에 기존 세션을 복구할 수는 없다. 코딩 끝에 자료 저장 등을 넣으면 저장이 되어 있긴 한데, 이것도 시간이 오래 걸리는 연산에서 커넥션이 끊어질 경우 계산을 계속 진행하고 있을 거라고 기대하긴 어렵다. 그러니까, 낮은 성능의 노트북일지라도 온라인을 계속 유지하고 있어야 한다는 소리. 비행기 타기 전에 코드 돌리고 착륙해서 확인 하는 등의 작업은 기대할 수 없을 것 같다. 이건 뭐 자기 워크스테이션 쓰거나 AWS같은 거 써야하나…아이패드 등으로 활용할 수 있는 점은 좋다만, 앱에서 네트워크 연결상태를 얼마나 안정적으로 유지하는지는 모르겠다. 역시 간단한 계산용…결론적으로 비교적 작은 계산을 연산속도 느린 노트북으로 작업할 때 꽤 도움이 되는 정도. 코드 실행시 온라인으로 파일을 보내고 하느라 몇 초가 더 걸리기 때문에, 아주 간단한 계산은 또 그냥 로컬에서 하는게 낫다.

Matlab lincense가 없는데 간단한 계산이 필요하면 octave-online도 한가지 방법…물론 느리다.
https://octave-online.net/