首先介紹一下我自己使用的有效方法,一般matlab啟動初始化很慢主要的原因是在找注冊文件,一般是由于安裝了MAC類的軟件引起的,所以我按照下文提供的方法“在【目標】中,鍵入如下內(nèi)容”$MATLAB\bin\win32\MATLAB.exe” -c “Full Path to the MATLAB license file including file name””,我在快捷方式里面目標路徑中鍵入:"C:\Program Files\MATLAB\R2009b\bin\win32\MATLAB.exe" -c "C:\Program Files\MATLAB\R2009b\bin\win32\lic_standalone.dat",即解決了這個問題,感謝網(wǎng)友無私的分享精神。注意上面路徑中l(wèi)ic_standalone.dat是自己的許可文件,換換就可以了!
汾西網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、APP開發(fā)、成都響應式網(wǎng)站建設公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)自2013年創(chuàng)立以來到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設就選創(chuàng)新互聯(lián)。
Matlab隨著版本的升級體積越來越大,帶來的問題就是啟動速度也越來越慢,下面就我注意到的幾個影響MATLAB啟動速度的問題集中和大家分析下解決辦法。
一、preferences方面原因
問題產(chǎn)生原因:
大家都知道,preferences參數(shù)很多,如果首選參數(shù)設置的不得當,或者文件太大,Matlab啟動的時候加載preferences設置就需要較長時間
問題解決方法:
以管理員權限登錄,以保證自己有查看隱藏文件的權限。
windows
(1)退出Matlab,一定要確保Matlab不再運行
(2)進入c:\Documents and Settings\ your username\Application Data\MathWorks\MATLAB\ 復制代碼真實該路徑可以在Matlab中鍵入prefdir得到
(3)將上述路徑中,以Matlab版本號為文件名(比如R2009a)的文件夾,重命名為R2009a_old(其實這一步是在備份preferences文件)
(4)重啟Matlab,此時predir下會重新創(chuàng)建一個R2009a文件夾,里面包含了所有的preferences設置,只是屬性值都是默認的,當然以前對Matlab的設置全部沒有了
(5)如果覺得不滿意,那么將新生成的R2009a刪除,將R2009a_old重新改為R2009a就可以恢復以前的設置了。
Linux, Unix, or Mac
1) Quit MATLAB. Ensure that MATLAB is no longer running.
2) Rename the “.matlab/” directory in the users home directory, to “.matlab_old/”.
3) Restart MATLAB.
二、License方面原因
問題產(chǎn)生原因:
每次Matlab啟動的時候會自動搜索Matlab的License文件,而計算機系統(tǒng)變量LM_LICENSE_FILE,則是用來告訴所有的應用程序從哪里找到對應的License文件
另外系統(tǒng)變量LM_LICENSE_FILE也可能導致初始化很慢,但是該變量只對Matlab負責,LM_LICENSE_FILE是對所有的程序負責
但是假如你的Matlab使用的是網(wǎng)絡版的License,你計算機沒有聯(lián)網(wǎng)就會導致無法找到network license
解決方法:
方法一
windows
(1)右擊【我的電腦】選擇【屬性】
(2)在【高級】選項卡中,點擊【環(huán)境變量】
(3)在下面的【系統(tǒng)變量】找到【LM_LICENSE_FILE】,如果沒有,點擊【新建】創(chuàng)建一個變量名為LM_LICENSE_FILE的變量
(4)將LM_LICENSE_FILE的屬性值設置為Maltab的License文件的絕對路徑
(5)重啟Matlab
Unix,Linux,or Mac
Check to see if there is an environment variable set. Where this is located depends on the shell you are using. Look in your home folder. This file may be called: .cshrc (c-shell), .profile (bash), or .bashrc (bash)
You can also create an environment variable for that shell session from the command line using export or setenv (depending on your shell), but the above file needs to be edited for a permanent change.
For example:export MLM_LICENSE_FILE /usr/bin/matlab/license.dat
如果你只有一個License,那么你可以當Matlab啟動的時候,在Maltab快捷方式或者命令行中指定License路徑
windows
(1)右擊Matlab快捷方式,選擇【屬性】
(2)在【目標】中,鍵入如下內(nèi)容”$MATLAB\bin\win32\MATLAB.exe” -c “Full Path to the MATLAB license file including file name”
復制代碼其中$MATLAB是Matlab安裝根目錄,可以在Matlab中鍵入matlabroot得到,Path to the MATLAB license file是License文件的絕對路徑
(3)重啟Matlab
Unix,Linux,or Mac
Use a -c switch to point directly at the license file when launching.
If the MATLAB installer has created symbolic links, runmatlab -c Full Path to the MATLAB license file including file name
If symbolic links were not created, run from $MATLAB/bin/./matlab -c Full Path to the MATLAB license file including file name
Where $MATLAB is the root MATLAB directory and Path to the MATLAB license file is the absolute path to your license file, likely in your $MATLAB/licenses directory.
ls類似一個列印的功能,他會列印出改文件的所有相關信息,所以他做的第一步掃描你的要列印的目錄,第2步獲取該目錄下所有文件的所有信息。3讀入內(nèi)存,4反饋屏幕。所以你說的慢,有好多原因,1可能是你LS的目錄下的子文件比較多,2磁盤速度跟不上,3內(nèi)存小。6秒不算慢了,我碰到過最慢得是30分鐘的。
1. 檢查網(wǎng)絡鏈接:確保Linux主機處于可用的網(wǎng)絡中,并檢查和確認IP地址,子網(wǎng)掩碼和網(wǎng)關都是正確的。
2. 檢查DNS設置:查看/etc/resolv.conf文件,確保其中包括合適的DNS服務器信息。 DNS服務器可以定位特定的網(wǎng)站或主機的IP地址,如果DNS服務器不可用或無法正確作出響應,則該Linux主機將無法正常使用網(wǎng)絡。
3. 調(diào)整TCP接收緩沖區(qū)大?。喝绻鸏inux主機處于一個快速網(wǎng)絡中,而下行速度很慢,則可能需要調(diào)整TCP接收緩沖區(qū)大小。 運行```sysctl -w net.ipv4.tcp_rmem=4096 87380 8388608```命令來調(diào)整TCP接收緩沖區(qū)的大小,并使設置永久保存在系統(tǒng)上,需要將其添加到/etc/sysctl.conf文件中。
4. 檢查防火墻:防火墻可能會攔截Linux服務器的流量,從而限制其上行和下行速度。 可以使用iptables或firewalld來查看和配置防火墻規(guī)則,并確保其中沒有任何設置可能會限制Linux服務器的速度。
開機時間過長 或者用的服務器版 偶爾會卡一下 一般linux是比較效率的
1 切換到root用戶
[linux@localhost ~]$ su root
密碼:
[root@localhost ~]#
2 查看/etc/sudoers文件權限,如果只讀權限,修改為可寫權限
[root@localhost ~]# ll /etc/sudoers
-r--r-----. 1 root root 4030 12月 10 09:55 /etc/sudoers
[root@localhost ~]# chmod 777 /etc/sudoers
[root@localhost ~]# ls -l /etc/sudoers
-rwxrwxrwx. 1 root root 4030 12月 10 09:57 /etc/sudoers
3 修改/etc/sudoers文件,執(zhí)行命令如下:
/ username是你的用戶名 /
[root@localhost ~]# echo 'username ALL=(ALL) ALL' /etc/sudoers
可以在root權限下找到 root ALL=(ALL) ALL的字段,在下一行追加:
username ALL=(ALL) ALL
( 我這里的username 是hk )
5分鐘之后密碼過期,下次需要重新輸入,如果不想如此麻煩,可以用以下方法
username ALL=(ALL) NOPASSWD: ALL
說明:格式為{用戶名 網(wǎng)絡中的主機=(執(zhí)行命令的目標用戶) 執(zhí)行的命令范圍}
4 保存退出,并恢復/etc/sudoers的訪問權限為440
[root@localhost ~]# chmod 440 /etc/sudoers
[root@localhost ~]# ll /etc/sudoers
-r--r-----. 1 root root 4030 12月 10 09:59 /etc/sudoers
OK,這樣就完成了,經(jīng)測試絕對可以。