I have the following weird behaviour on a machine with 40 cores: calling System.Environment.ProcessorCount in fsi (12.0.30815.0) and fsianycpu (12.0.30815.0) leads to different results.
In fsi I get System.Environment.ProcessorCount = 32 in fsianycpu I get System.Environment.ProcessorCount = 40. This also seems to affect the task parallel library which only uses 80% of all available cores when a simple test code is run from fsi (which has the wrong processor count).
What could be the reason?