Xming For Mac
MCNP - Frequently Asked Qustions
If it is not already running, simply look up Xming in the Windows search bar and click Open (or hit Enter). You can tell if Xming is running if the Xming logo is displayed in your taskbar. Option 1 - Git Bash. The first time you attempt to do this you'll need to run the following commands to modify your.bashprofile. Installing/Configuring PuTTy and Xming. Most of us connect to the CTM server via a PC running Windows, essentially making the PC a terminal. The PC interacts with the server through the X-windows system, forwarding the display from the server to the PC.
General Windows Mac OS X Linux Parallel Processing
General
How should I reference MCNP6 in reports and papers?
- If you are using Linux or Mac OS X then you can start an X session by starting a session with ssh -XY Mac OS X Important Note for X11 Apple have decided not to include an X11 client by default with it's latest version of OS (Mountain Lion) If you want to use an application in a way which requires X11 (Graphical User Interface) then, please see.
- Xming gives your X Window System display server a number of sample X tools and applications (traditional ones). It also gives your display server a set of fonts. The display server supports a number of different languages. It also has OpenGL GLX 3D graphics extensions and Mesa 3D capabilities.
Reference for MCNP6.2: (Either or both of the following)
C.J. Werner, et al., 'MCNP6.2 Release Notes', Los Alamos National Laboratory, report LA-UR-18-20808 (2018).
C.J. Werner(editor), 'MCNP Users Manual - Code Version 6.2', Los Alamos National Laboratory, report LA-UR-17-29981 (2017).
Reference for MCNP6.1:
T. Goorley, et al., 'Initial MCNP6 Release Overview', Nuclear Technology, 180, pp 298-315 (Dec 2012).
Reference for MCNP6.1.1:
T. Goorley, 'MCNP6.1.1-Beta Release Notes', LA-UR-14-24680 (2014).
Reference for MCNP5:
X-5 Monte Carlo Team, i 'MCNP - Version 5, Vol. I: Overview and Theory', LA-UR-03-1987 (2003).
Reference for MCNPX:
D.B. Pelowitz, Ed., 'MCNPX Users Manual Version 2.7.0' LA-CP-11-00438 (2011).
Can you send me a copy of MCNP?
No. MCNP is distributed by the Radiation Safety Information Computational Center (RSICC), Oak Ridge, Tennessee.
Go to the RSICC website to request a copy of the latest MCNP distribution. Two versions are available -- one with the source coding included, and one without the source coding. Both distributions include executables and documentation. Non-US citizens should note that requests for the distribution that includes source coding can take up to several months, since approval from DOE is required; the executable-only distribution can be obtained much faster.
Can MCNP6 run on GPUs (or graphics cards, or video processors)?
No. MCNP6 can run in parallel using the different cpu-cores in any computer (threading), or using different nodes in a cluster (MPI), or both. See the discussion of parallel processing in this FAQ page.
While Monte Carlo codes can certainly be adapted to vector-style parallelism using GPUs, many structural and algorithmic changes are required. The effort required to adapt a very large, mature Monte Carlo code such as MCNP to GPUs is huge, and there are no current plans to do so.
I need to build MCNP6.1.1 from source code. Which Fortran compiler should I use?
The MCNP6.1.1 executables that are distributed in the 2014 update from RSICC were built with:
Linux: Intel Fortran 12.1.5
Mac: Intel Fortran 12.0.2
Windows: Intel Fortran 12.1.7
In general, we try to use stable, reliable versions of the Fortran compilers. Often, the initial versions of a new major release (e.g., 13.0) have bugs and cannot be used. Later minor versions (e.g., 13.1.3) where the compiler bugs are fixed are often needed. Note that this comment refers to bugs in the Fortran compilers. Our pre-release testing verifies that a Fortran compiler can be used to successfully build MCNP6, and that MCNP6 produces correct results. For each MCNP6 release, documents are provided with the code distribution and on the MCNP website -- release notes plus reports on testing.
Our testing during the Spring of 2014 indicates that these Fortran compilers can be used to successfully build MCNP6.1.1:
Intel Fortran 11.1.072, 12.0.2, 12.0.3, 12.1.2, 12.1.5, 12.1.7, 13.1.3
gfortran 4.7.0 (on Linux)
Portland Group 12.10 (on Linux)
Fortran compilers that did not work correctly (for us) include:
Intel Fortran 13.0, 13.1.0, 13.1.2, 14.0.2, 15.0
Portland Group 13.10
Pathscale 4.0
[Update, 2014-11-18]We discovered a simple fix to work around the Intel compiler bugs. In the MCNP611/Source/src directory, edit the file pblcom.F90 and change these lines: common /pblcom_thread/ pbl, pbl_src, pbl_stack
to these:
common /pblcom_thread/ udt, udt_stack
common /pblcom_thread/ pbl_in_use, udt_in_use, is_uncollided_part
!$OMP THREADPRIVATE( /pblcom_thread/ ) common /pblcom_thread1/ pbl, pbl_src, pbl_stack
After that simple change, these compilers work for mcnp6.1.1b
common /pblcom_thread2/ udt, udt_stack
common /pblcom_thread3/ pbl_in_use, udt_in_use, is_uncollided_part
!$OMP THREADPRIVATE( /pblcom_thread1/ )
!$OMP THREADPRIVATE( /pblcom_thread2/ )
!$OMP THREADPRIVATE( /pblcom_thread3/ )
Intel Fortran 11.1.072, 12.0.2, 12.0.3, 12.1.2, 12.1.5, 12.1.7, 13.1.3, 14.0.2, 14.0.4, 15.0.090, 15.0.1, 15.0.2
gfortran 4.4.7, 4.7.0, 4.7.2, 4.8.2 (on Linux, without threading)
Portland Group 12.6, 12.10, 13.7 (on Linux)
and these do NOT work:
Intel Fortran 13.0, 13.1.0, 13.1.2
Portland Group 13.10
Pathscale 4.0
[Update, 2015-08-25] For the Intel-15.0.3 compiler, if this line in source routine MCNP611/Source/src/exemes.F90 select case( hm(js) )
is changed to this: select case( trim(hm(js)) )
then Intel-15.0.3 can be used to build MCNP6.
We continue to test the newer versions of Fortran compilers, but of course that takes time. We will update this information here as more testing is performed and new Fortran compiler versions are released. MCNP users can help this effort by letting us know which Fortran compilers worked and which did not when building MCNP6 from source code. (email the MCNP Forum or mcnp6@lanl.gov)
Updated: 2015-08-25
When I use Abaqus/CAE to create an unstructured mesh geometry model, can I name my parts anything that I want?
No. You should NOT use any of the reserved words 'source', 'tally', 'statistic', or 'material' anywhere in the part name. Those would conflict with the elset name when Abaqus/CAE writes its inp file.
Is it possible to define a SSR source inside or on an unstructured mesh (UM) geometry?
No.
Can a SSR source be used in the CSG part of a hybrid CSG/UM model?
In theory, yes. Has it been rigorously tested and evaluated? No
Will MCNP6 tally the energy fluence with the *FMESH tally when using the UM?
Yes. You can overlay the FMESH on the UM; they are independent of one another. However, there is some difficulty with this in version MCNP6.1 (2013) that has been fixed in MCNP6.1.1b (2014).
I'm trying to use PTRAC to print out each particle's contribution to a certain tally, but am not seeing all of the tally information.
When one uses the 'tally' option on the ptrac card, the user must also use the 'value' option. The 'value' option is used to filter out the low scoring histories to the tally of interest. To ensure that all histories that contribute to the tally are written to the ptrac file, the user must include 'value = 0' on the ptrac card.
'...MCNP seqfaulted when I tried to use ENDF/B-VII cross-sections...'
'...for large models, threaded operation crashes MCNP...'
These difficulties are usually due to the 'stacksize' on your system. The 'stack' refers to memory space used during execution of a program for scratch when calling subprograms that need memory space temporarily. Unfortunately, most linux/mac/unix systems set the stacksize to a small size, a few megabytes. This varies from system to system. Using threading, there is also the issue that each thread needs its own stack space, and the amount is also nonstandard for different systems.
The stacksize can be increased by using the 'ulimit' command (bash) or 'limit' command (csh,tcsh). The thread-stacksize for a system can be increased by setting the environment variable OMP_STACKSIZE
For linux & bash shell, you might try this: ulimit -s unlimited
OMP_STACKSIZE='50M'
EXPORT OMP_STACKSIZE
For linux & csh or tcsh limit stacksize unlimited
setenv OMP_STACKSIZE 50M
For Mac & bash ulimit -S -s hard
OMP_STACKSIZE='50M'
EXPORT OMP_STACKSIZE
Note: 50M is a reasonable guess, might want a bigger number. Also, the above commands are usually put in your ~/.bashrc or ~/.cshrc files.
For some more info, try this web link: LLNL tutorial on OpenMP
Windows
Where is the mcnp_env.bat file? I can't find it.
The mcnp_env.bat file is created when you install MCNP6. It is placed into the home folder of the user who performed the installation. If you can't find it, do this from a command window: echo %HOMEDRIVE%%HOMEPATH%
If someone else installed MCNP6 for you (e.g., a system administrator or computer support person), you should ask them to copy the mcnp_env.bat file from their folder %HOMEDRIVE%%HOMEPATH% to yours.
How can I run MCNP6 from a Windows .bat script, without using the MCNP Command window?
You need to use a text editor to create a file, called myjob.bat below, that includes commands to set the proper Windows environment variables for MCNP6 & Windows, and then runs MCNP6.
For example, assuming that C:my_mcnp is where you installed MCNP, put the following in the myjob.bat file. Then you can run the job by double-clicking the myjob.bat file.: @ PATH C:my_mcnpMCNP_CODEbin;%PATH%
@ set DATAPATH=C:my_mcnpMCNP_DATA
@ set DISPLAY=localhost:0
start/wait mcnp6 i=myinp.txt tasks 4
pause
The start/wait and pause are optional. The start/wait allows the batch file to pick up where it leftoff if you interrupt a run, then return to it (after checking status or plotting). The pause keeps the window open after mcnp6 completes, so that you can see any messages. (Thanks to Mark Hogue for the suggestions.)
MCNP on Windows - Plotting with Xming
I installed xming and started it, but still get the message 'xlib: unable to connect to server display'.....
During the MCNP6 installation process for Windows computers, a file called mcnp_env.bat is created in your %HOME% folder. This file is invoked when the MCNP command window is started (i.e., by double-clicking on the MCNP command window desktop shortcut). It sets several environment variables that are used by Windows and MCNP: %PATH%, %DATAPATH%, and %DISPLAY%.
By default, the mcnp_env.bat file sets the %DISPLAY% variable to ':0.0', which works for most X11 servers. xming, however, needs a different setting - 'localhost:0'.
This is easy to fix:
Use Notepad or Wordpad to open the file mcnp_env.bat in your %HOME% folder.
1. Change the last line in the file from this
@ set DISPLAY=:0.0
to this
@ set DISPLAY=localhost:0
Note: Do NOT include any trailing blanks.
2. Do not change anything else (unless you know what you're doing).
3. Save the file. Then exit Notepad or Wordpad. Also exit from any MCNP command window that was previously open.
After that, MCNP plotting with xming should work correctly.
I've tried multiple installs of the MCNP6 package from RSICC on two machines with Windows 7 and one in XP. In all cases with Windows 7 the installation looks good, but it will not run. I get this error when trying to run the test problems:
'This application was unable to start correctly (0xc000007b).'
The fact that I succeeded on the XP machine suggests that this is not user error. ..... Any suggestions?
We have seen this problem a number of times -- it's due to Windows, not MCNP. Here are 2 possible solutions:
- Solution 1
Earlier versions of Windows 7 did NOT include this DLL file: msvcr100.dll A later WIndows upgrade did include that DLL file.
So, one possible solution to your problem is: upgrade your Windows 7 to the latest version (ie, apply patches or updates)
Solution 2
If you don't want to do that (or aren't allowed), then here is a workaround:
In the folder MCNP_CODEMCNP6binwindows there are files named x64_msvcr100.dll and x86_msvcr100.dll. If you have a 64-bit Windows OS (probably), then choose the x64_ version; if a 32-bit Windows OS, then choose the x86_ version.
Copy that file to the folder MCNP_CODEbin and then rename it (in the new folder) as msvcr100.dll Then, also copy that new file to the folder MCNP_CODEMCNP6bin
That should fix the problem. (It did for us on an un-updated Windows 7 system.) Run the installation tests to check.
CAUTION
This msvcr100.dll file will be used by anything that needs it, if you run from the MCNP command window, since it puts MCNP_CODEbin first on its execution search path. If you someday bring your Windows 7 up to date, then you will want to delete the file MCNP_CODEbinmsvcr100.dll
You may want to discuss either of the above fixes with your computer sysadmin.
Mac OS X
MCNP on Mac OS X - Environment Variables
If you use the Terminal app on Macs, note that it reads only the .bash_profile from your home directory when it starts, and does NOT read the .bashrc file.
The MCNP6 install scripts put the settings for the environment variables PATH and DATAPATH into your .bashrc file, but NOT into your .bash_profile.
To fix this, do the following:
cd
cat .bashrc >> .bash_profile
Exit from the Terminal app, and then restart it. Type 'env' to see if the PATH and DATAPATH settings include the MCNP locations.
If you use the X11 app and an xterm window, the .bashrc file is read when the app starts. You can check the environment variables by typing 'env'.
Also be aware that at some places (e.g., ours), the sysadmins put special .bashrc and .bash_profile files into your home directory, or possibly even alter the system defaults, to enforce certain security policies. If that is true at your location, then you may need to check the files or talk to the sysadmins about what to do.
MCNP on Mac OS X 10.8 - Mountain Lion
To fully utilize the MCNP plotting, testing, and build procedures, users should make sure that basic unix utility commands and X11 plot support are available. On older versions of Mac OS X, X11 support was provided via an SDK and the necessary unix commands (eg, make) were available by default.
Apple changed very much for OS X 10.8, Mountain Lion. Before installing MCNP on Mountain Lion, these steps are necessary, and only take minutes.
(1) Go to the App Store, then download and install the Xcode package. (It's free)
(2) Open (double-click) Xcode, then select 'Preferences' from the menu items. Under Preferences, select 'Downloads', and then 'Command line tools'. This installs some basic unix command line utilities, such as 'make'.
(3) Install Xquartz, the replacement for X11 (it's free): From the Finder, go to 'Applications', then 'Utilities'. Open (double-click) the X11 app. A window will appear with instructions for downloading and installing the Xquartz package.
MCNP on Mac OS X 10.9 - Mavericks
This is for people who build MCNP6 from the source code on Macs. Others can disregard.
I recently upgraded a MacBook Pro from OS X 10.8 to OS X 10.9 (Mavericks), and ran into trouble building MCNP6 from source coding. Apple has continued to change a number of things, without providing any useful guidance. Here is what I had to do to be able to build MCNP6:
- Reinstall XQuartz.
Even if you had previously installed it, it needs to be updated for OS X 10.9.
Click on /Applications/Utilities/X11.app, then the link for XQuartz & follow the download/install directions. - Download & install Xcode 5 from the App store.
Even if you previously installed Xcode & it appears to be present, you need to install Xcode 5 for use with OS X 10.9. - Install the Xcode command line tools.
Even if you previously did this, you need to do it again for Xcode 5. The old way to do this does not appear to be available (from Xcode preferences, downloads), but a command-line method works. From the Terminal app or an X11 xterm window:
xcode-select --install
(Need sudo privileges to do it this way) - Fix the C++ stdlib usage:
Edit the file MCNP6/Source/Darwin.gcf
Search for CCFLAGS
Append this to the end of the CCFLAGS settings: -stdlib=libstdc++ - Remove any old .o files & rebuild from scratch:
cd MCNP6
make realclean
make build GNUJ=4
make test NTRD=4
Linux
Caution for environment variables, such as MAKEFLAGS
The MCNP6 build system uses the GNU version of make, so you need to be careful about any environment variables that affect building and testing.
The MCNP developers always compile the code with multiple threads:
make build GNUJ=8
which would be equivalent to setting the environment variable MAKEFLAGS as:
export MAKEFLAGS=' -j 8 '
make build
For running REGRESSION tests or other tests, parallel execution using multiple make instances does not work, since some of the tests must be run in a certain order. (Of course this could be fixed with proper dependency rules...)
To run the tests sequentially: make test
To run the tests threaded: make test NTRD=8
Do not use the -j 8 flag for make, and do not set it via the MAKEFLAGS environment variable.
Parallel Processing
MCNP6.1 and Parallel Processing
This note refers to the July 2013 release of MCNP6.1 from RSICC.
(1) MCNP & Parallel Processing
MCNP6 suports 2 types of parallel computing:
- Threading -- OpenMP threading on a single multicore computer (eg, laptop, office computer) or on a single node of a server or cluster (eg, 1 node in a cluster, with 1 or more processors or cores sharing memory)
- MPI -- Message-passing between nodes on a cluster using some external MPI environment and libraries.
These can be used separately or together.
(2) Regarding threading:
All recent laptops & office computers use multicore processors. By default, MCNP6 will only use 1 of the processor cores (to avoid hogging all of the system resources). If you want to use more than 1 cpu core, just add 'tasks n' to the MCNP execution line command, where 'n' is the number of cpu-cores you want MCNP6 to use. For example,
bash> mcnp6 i=myinp.txt tasks 4
would direct MCNP6 to use 4 cpu-cores when following histories. 'n' should be chosen considering your specific processor: For my laptop, with an Intel i7 with 2 cpu-cores & 2 hyperthreads per core, I usually use 'tasks 4'.
The default version of MCNP6 from the installation includes the threading capability. It is not necessary to copy other versions, rename executables, etc., just run the code with the appropriate 'tasks n' supplied.
(3) Regarding MPI & clusters:
If you want to run MCNP6 using multiple nodes on a cluster, then you must first install an MPI package on your cluster.
For Windows clusters, the precompiled MCNP6 executable is based on the MPICH2 package obtained from the www.anl.gov website. That was found to be reasonably easy to install in precompiled binaries. The MCNP6 executable for 64-bit Windows is found at MCNP_CODEMCNP6binwindowsmcnp6_windows_x86_64_omp_mp and should be copied (and renamed) to MCNP_CODEbinmcnp6_mpi.exe You can then run an MPI job as
mpirun -np 8 mcnp6_mpi i=myinp.txt
For Mac OS X and Linux, you will need to install a version of MPI -- we use & recommend OpenMPI from the open-mpi.org website. Then, you must compile the MCNP6 executable yourself, so that the proper linkage to MPI libraries is made.
cd ~/MyMCNP/MCNP_CODE/MCNP6
make CONFIG='intel plot omp openmpi' install
When MCNP6 is built for MPI, an executable called mcnp6.mpi is created in the MCNP_CODE/MCNP6/bin directory. You should also copy this to the MCNP_CODE/bin directory. Then an MPI job can be run as
mpirun -np 8 mcnp6.mpi i=myinp.txt
(4) Threading + MPI
If MPI is installed, and an mcnp6.mpi executable was built, then threading and MPI can both be used. For an 8-node cluster with 16 cpu-cores per node, you could run with 128 cpu-cores by
mpirun -np 8 -bynode mcnp6.mpi i=myinp.txt tasks 16
(5) Comment
Unfortunately, most clusters are configured differently, with job queueuing systems such as Moab or LSF, different 'module' packages, different versions of MPI, etc. Installing MPI & having the cluster software configured consistently is not for beginners. You may need to consult with your cluster administrator, or enlist the aid of some talented young student.....
.....more information is coming soon.....
Operated by Triad National Security, LLC for the U.S. Department of Energy's NNSA © Copyright Triad National Security, LLC. All rights reserved
Original author(s) | Alexander Gottwald (2004–2005)[1] |
---|---|
Developer(s) | Alexander Gottwald (?–2005)[2][3] Colin Harrison(2005 - present)[4] |
Initial release | November 9, 2004; 16 years ago |
Stable release | 7.7.0.38, proprietary 6.9.0.31, MIT License / August 31, 2015; 5 years ago, proprietary May 4, 2007; 13 years ago, MIT License |
Operating system | Microsoft Windows XP/Server 2003/Vista/Server 2008/7/Server 2012/8.x/10 |
Type | Display server |
License | Proprietary software[5] |
Website | www.straightrunning.com/XmingNotes/ |
Xming is an X11display server for Microsoft Windows operating systems, including Windows XP and later.[6][7][8]
Features[edit]
Xming provides the X Window System display server, a set of traditional sample X applications and tools, as well as a set of fonts. It features support of several languages and has Mesa 3D, OpenGL, and GLX3D graphics extensions[6] capabilities.
The Xming X server is based on Cygwin/X,[9] the X.Org Server. It is cross-compiled on Linux with the MinGW compiler suite and the Pthreads-Win32 multi-threading library. Xming runs natively on Windows and does not need any third-party emulation software.
Xming may be used with implementations of Secure Shell (SSH) to securely forward X11 sessions from other computers.[7] It supports PuTTY and ssh.exe, and comes with a version of PuTTY's plink.exe. The Xming project also offers a portable version of PuTTY. When SSH forwarding is not used, the local file Xn.hosts must be updated with host name or IP address of the remote machine where the GUI application is started.
The software has been recommended by authors of books on free software when a free X server is needed,[10][11] and described as simple[12] and easier to install though less configurable than other popular free choices like Cygwin/X.[13]
Transition to proprietary license[edit]
Since May 2007, payment must be made to download new releases.[14] Purchasing a license will allow the user access to new downloads for one year; however, MIT-licensed releases (referred to by the author as 'public domain' releases) can still be downloaded with no payment on SourceForge.[15]
See also[edit]
Notes[edit]
- ^'Alexander Gottwald - mingw only xserver'. sourceware.org.
- ^'Alexander Gottwald - New Cygwin/X and Xming maintainer wanted'. sourceware.org.
- ^'Xming - Freedesktop.org'. 5 December 2004.
- ^Free as a Bird - Linux GUI with Xming, A Prisoner of Windows LG #129 ( August 2006), Linux Gazette - Xming is a port of the X.org X11 server to the Windows environment, currently maintained by Colin Harrison who took over from Alexander Gottwald.
- ^'Xming's Terms and Conditions'. Xming. Retrieved October 13, 2009.
- ^ abJoe 'Zonker' Brockmeier (2007-08-08). 'Use Linux over Windows with Xming'. Linux.com. Retrieved 2009-06-08.
- ^ abDavid Mair (2006-11-22). 'Xming - A X Server for Windows'. Novell. Retrieved 2009-06-09.
- ^Harrison, Colin. 'Xming X Server for Windows - Official Website'. wayback.archive-it.org.
- ^Harrison, Colin. 'Xming X Server for Windows - Code'. www.straightrunning.com.
- ^Van Vugt 2009:273
- ^Garrido 2007:366
- ^Iskander 2007:41
- ^Peckar 2008:182
- ^Harrison, Colin. 'Xming X Server for Windows - Official Website'. www.straightrunning.com.
- ^'Xming X Server for Windows'. SourceForge.
References[edit]
- Iskander, Magued (2007). Innovations in E-learning, Instruction Technology, Assessment, and Engineering Education. Springer. ISBN978-1-4020-6261-2.
- Van Vugt, Sander (2009). Beginning the Linux Command Line. Apress. ISBN978-1-4302-1889-0.
- Garrido, José M; Richard Schlesinger (2007). Principles of modern operating systems. Jones & Bartlett Publishers. ISBN978-0-7637-3574-6.
- Peckar, Mike (2008). Fognet's Field Guide to OpenView Network Node Manager - Revised. Lulu.com. ISBN978-0-9785627-2-4.
External links[edit]
Xming For Mac
- Xming on SourceForge.net
- WebCache of Original project homesite at the Wayback Machine (archived October 2, 2007)