Note: This section contains the instructions for preparing the workstation when installing McIDAS-X on Win10 in the single-user configuration. For the multi-user configuration instructions (or information about the two configuration options), return to the Configuration Options and Instructions and follow those instructions.
Complete the instructions below to enable and install WSL 2.
Enable and install WSL 2 by completing steps 1-4 in the Manual Installation Steps at Microsoft's Windows Subsystem for Linux Installation Guide for Windows 10. The four steps are: enable the Windows Subsystem for Linux; check requirements for running WSL 2; enable virtual machine feature; download (and run) the Linux kernel update package. Administrator access is required, and a restart may be required after the Linux kernel update.
Do not complete steps 5 and 6 in the Manual Installation Steps of the Microsoft document now. Instead, proceed to the next page, where those steps will be completed along with other instructions.
The sections below contain additional workstation configuration information mainly for administrators, such as details about port 112 use, system stack size and memory usage.
ADDE data requests from clients to remote servers and back require use of port 112. Upon receiving a data request from a client, the remote server gathers the requested data, packages it, then sends it to the client back through the same open connection. Therefore, sites with firewalls or other screening mechanisms must open port 112 on their remote servers if they want to allow their clients to access the servers' data. And sites must ensure that outbound requests on port 112 are allowed on their client workstations and from their local network.
Some systems have a hard stack size limit that is too small for decoding large grids. This results in McIDAS-X commands like GRDDISP giving an Error: Unix system stack size on server machine insufficient for grib decoding message when trying to display those grids. If the message occurs while accessing a remote dataset, we recommend that you contact the server administrator and request that they increase the hard limit to 20480 or larger on the server machine using the Increasing the Stack Size instructions in the Linux section of the Preparing the Workstation page. If it occurs while accessing a local dataset, run the command !ulimit -H -s in the McIDAS-X session to view the current setting for the hard limit, then contact Unidata McIDAS Support <support-mcidas@unidata.ucar.edu> to report the current value and request the instructions for increasing the hard limit to 20480 or larger on your local workstation.
Each McIDAS-X session can have up to 9,999 frames. However, not all workstations can reasonably accommodate one or more users running sessions with thousands of frames. This is because system performance is reliant on several factors, including how much memory the workstation has, how many frames are created, how large the frames are, and how many graphics are drawn on the frames. McIDAS-X uses shared memory (a subset of system memory) to store image and graphics data for quick retrieval, while the X11 display subsystem uses a separate allocation of system memory for its own frame buffers. Shared memory usage in bytes is approximately equal to the number of pixels of imagery plus pixels of graphics and is allocated on the machine running the McIDAS-X commands.
The number of pixels of imagery is LINES x ELEMENTS x FRAMES, while the number of pixels of graphics is usually far less than the number of image pixels, with each graphics pixel on screen using eight bytes of memory. Graphics covering 10% of your imagery pixels will approximately double the shared memory requirements. Erasing graphics does not free up memory, though the space is reused when new graphics are drawn. Note that when using the RGBDISP command to display color imagery, three color planes (for RGB) are used and thus image frames displaying RGBDISP output use three times as much shared memory as regular grayscale image frames. System memory usage for the X11 display subsystem is about LINES x ELEMENTS x FRAMES x 4 due to the high bit-depth of the frame buffers, and is allocated on the computer being used to display the McIDAS-X session.
For example, a McIDAS-X session consisting of 2000 frames at 960 x 1280 pixels each, with a total of 10% of the frames' content covered by graphics command output, will require approximately 4.9 GB (2000 x 960 x 1280 for imagery + 2000 x 960 x 1280 for graphics) of shared memory (a subset of system memory) on the workstation running the session. The computer that is being used to display the McIDAS-X session will require approximately 9.8 GB (2000 x 960 x 1280 x 4) of system memory for X11. If the workstation running the session is also the display machine, the total system memory requirement will be about 15 GB. Similarly, if the McIDAS session has 1000 RGB frames, they will require approximately 4.9 GB (1000 x 960 x 1280 x 3 for imagery + 1000 x 960 x 1280 for graphics) of shared memory on the workstation running the session, and 4.9 GB (1000 x 960 x 1280 x 4) of system memory for X11.