⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 contents.m

📁 A very small 250-line library (written entirely in MATLAB) that allows multiple MATLAB programs to t
💻 M
字号:
% Author:  Lucio Andrade% Name:    parmatlab   v1.7 Beta 10/01% Summary: This toolbox distributes processes over matlab workers available over the%          intranet/internet. This toolbox implements a SPMD parallel architecture %          model.%% NEW IN v1.7: ---> Real CROSS-PLATAFORMS, CROSS-OS and CROSS-Matlab versions !, %                   tested with Solarisv, linux, win98, winNT, win200, matlab 5.3 & matlab 6%              ---> Error handling capabilities, you can debug the workspace of a worker if %                   it had an error and without stopping the other workers or the majordomo%              ---> Improved demo which explains how to use basic functions to implement also%                   a MPMD parallel architecture model  %              ---> Capability of re-use data which was already transmitted to the workers %                   worspace%   % New in v1.05: --> Better explained demo files to introduce faster the user to the tool%% Important note: I have received lots of e-mail with ideas to improve this toolbox, I'll%                 appreciate if you send me an e-mail explaining your application, to plan%                 future improvments.%    %   Description:%       This toolbox distributes processes over matlab workers available over the%       intranet/internet. These workers must be running a matlab daemon to be accessed. %%       This tool is very useful for corsely granular parallelization problems and in the%       precesence of a distributed and heterogeneus computer enviroment. You can operate %       the toolbox in twomodes:% %       [MPMD mode] Multiple program-Multiple Data parallel model; the user has the control %       to send different matlab tasks to remote machines simultaneusly and retraive results%       later.  %%       [SPMD mode] Single program-Multiple Data parallel model; parallelization and managment %       of remote workers is done automatically. Input data must be regularly ordered in%       matlab hyperblocks. %%       1) You DO NOT need a common file system, all communications between tasks (tx of%       commands/data) are througth tcpip connections. %       2) The parallel virtual machine does not need to know which workers are available,%       it'll will be listening until workers report ready. New workers can be added even if %       the process has been started. %       3) Parallelization can be done over different dimensions (up to 5) at the same time%       and using contiguous, overlapping or constant hyper-blocks. Indexes can also vary for%       different input variables, the only restriction is that the total number of parallel%       elements should be the same. %       4) Tcpip TOOLBOX 1.2.3 by Peter Rydesater is used for communications, but some %       improvments have been done to avoid file writing to serialize data before tx. %       Instead, serialization of data is achieved with a low-level MEX file. Serial data to %       Matlab variables is also done with a MEX file. The latest version of the Tcpip toolbox %       is not available in the Mathworks site, I included  version 1.2.3 in this %       distribution, but you should visit http://petrydpc.itm.mh.se/tools and check%       if there is a newer version available.%%       Note 1: Please refer to the demos to understand how the tool is used %       Note 2: Timeout utilities  will be added in a future version. %       Note 3: Capability to manipulate data in remote workers will be added in a future%               version. But it is not clear for me yet if it is really needed.%%%       This program is free software; you can redistribute it and/or modify it under the%       terms of the GNU General Public License as published by the Free Software Foundation;%       either version 2 of the License, or (at your option) any later version. %%       This program is distributed in the hope that it will be useful, but WITHOUT ANY %       WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A %       PARTICULAR PURPOSE. See the GNU General Public License for more details.%%=======================================================================%  I'll be very glad if you let me know that this toolbox is useful for%  you, please let me know any comment (landrade@ece.neu.edu). %%  Postcards or voluntary monetary contributions to: %      78 S. Huntington Av. 12%      Boston MA,02130 USA%=======================================================================%%%  Main implementation:             %  ===================%%  Lucio Andrade               %  CETYS University, Mexico                    %  e-mail:lucio@cetys.mx %  %%  Contents         This help file.%%    THESE ARE THE FILES THAT A NORMAL USER SHOULD USE%%  initmajordomo.m  Initializes communication ports%  closemajordomo.m Closes comm ports and realeses workers%  parallelize.m    Parallel implementation of a function%  worker.m         Deamon for matlab workers%  sendtask.m       Send a function (with variables) to a matlab worker%  receivetask.m    Receive results of a function finished by a matlab worker %  distm_demo_1.m   Basic demo%  distm_demo_2.m   Demo with functions from the Image toolbox%%    SOME UTILITY FILES THAT THE USER MIGHT USE%%  sendvar.m        Send a var with tcpip (No file flushing for doubles and chars)%  getvar.m         Get a var that was sent with sendvar.m%  getmyip.m        Obtains the IP address of local machine%%    SOME OTHER TOOLS NEEDED BY THE TOOLBOX%%  mvar2str.m       Converts a matlab var to a string%  str2mvar.m       Reverses mvar2str.m%  msub2ind.m       Modyfied version of sub2ind.m, uses a vector of subindexes instead%  mind2sub.m       Modyfied version of ind2sub.m, uses a vector of subindexes instead%  serial2double.c  C-Source for Mex file for data conversion tool%  double2serial.c  C-Source for Mex file for data conversion tool%%    ADDITIONAL FILES FROM THE TCPIP TOOLBOX by Peter Rydes鋞er (not all used and some modifyed)%%  tcpip_close      Closes an open tcpip connection.%  tcpip_open       Opens a new tcpip connection.%  tcpip_read       Reads an array of bytes from pipe.%  tcpip_readln     Reads a line of chars (bytes) if their is a complete.%  tcpip_sendfile   Sends a file throw connection to receiving "tcpip_getfile"%  tcpip_getfile    Receives a data from sending "tcpip_sendfile" and saves to file.%  tcpip_sendvar    Send matlab variable.%  tcpip_getvar     Get matlab variable.%  tcpip_servopen   OLD! Only for compatibility. Blocking wait for connetion!%  tcpip_servsocket Creates a socket binded to a port, waiting for connections!%  tcpip_listen     Checks/Gets connection connected to tcpip_servsocket%  tcpip_status     Returns status of open connection. Detects broken connections.%  tcpip_viewbuff   Returns whats in receiving buffer but will not empty it.%  tcpip_write      Sends an array of bytes to connection.%  tcpipmex.c       C-source for the mex file that is core of this toolbox.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -