-
-
Notifications
You must be signed in to change notification settings - Fork 454
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
command to gather build report on a platform/hardware combination #8048
Comments
Attachment: trac_8048-report-command.patch.gz half-baked solution; based on Sage 4.3.2.rc0; don't use |
comment:1
I have attached a half-baked patch, which is not ready for review. I leave it here so I, or anyone, can work on it later on. |
comment:2
Mathematica actually provides one called
http://reference.wolfram.com/mathematica/ref/SystemInformation.html http://reference.wolfram.com/mathematica/guide/SystemInformation.html It also provides information on the machine precision. A look at what they provide might be useful. I would suggest we also include the value of exp(1.0), as that is system dependent, though care needs to be used in computing that so compilers don't inline the result. Some possible sources of information would be: == Solaris ==
The best way to find out if a Solaris system is running out of memory is to use the scan rate ('sr' column) of 'vmstat'. (Don't even think about believing top) == Linux ==
== OS X ==
|
comment:4
I will take this and try to write it for linux and sunos. It should
Stay tuned. |
shell script to determine somewhat verbose environment and hardware info, Linux only currently |
comment:5
Attachment: hrdwr-info.sh.gz Notes on hrdwr-info.sh as of July 15:
There are several things to consider: * Pruning info from /etc is not safe. It is not standardized, subject to user modifications, subject to lack of updates between distros (Ubuntu -> Mint etc). But, when the info exists it can be useful. It can also be badly formatted... with \r and \n explicit in the file. I used some 'sed' commands to get around this a bit.
Questions I have: * Can you test it, break it?
I'll post a link with sample output since it isn't formatting nicely in this forum wysiwyg editor. |
example outputs |
comment:6
Attachment: output-examples.txt I had a look at this and have a few comments.
('command -v' is portable - the use of 'which' is not). This will allow us to see if the compilers are a mix of compilers from places like
could be changed to:
(There is no need for the -e option to
Could be changed to:
by simply removing the unnecessary
could be useful, as it allows one to see more what is happening on a system at the point of failure. Overall, this looks very useful. I was quite impressed with it. |
comment:7
I used this on a bunch of machines earlier today to help produce the page http://wiki.sagemath.org/skynet. Very nice. I don't know how useful the username, pwd, and shell lines are, but they don't hurt. On two machines, both with processors described by On Mac OS X, I think a lot of the relevant information can be extracted by running the command |
comment:8
jhpalmieri: Can you please send me (jason.b.hill@colorado.edu) the /proc/cpuinfo files for Cicero and Cleo? I have made some changes to the script via what David said above, but there are some things that I can improve if I know what those proc files look like, since there are a couple of cases when the script is catching errors and shouldn't be. I'll respond more after making those changes and re-uploading the script. |
comment:9
I've copied /proc/cpuinfo for cicero, cleo, and iras to the files |
comment:10
How many physical processors do Iras and Cleo have? (My guess is 2.) Have you noticed that their "physical id" tags are very strange? The physical cpu labels are 0 and 3 instead of 0 and 1. I'm wondering if this is consistent with other Itaniums. |
comment:11
How do I find out how many physical processors they have? A comment on some random web page suggests that if two "processors" in /proc/cpuinfo have the same physical address, then they're the same processor. How else do I tell? |
comment:12
Replying to @jhpalmieri:
On Solaris or OpenSolaris:
but I don't know about any other operating system. |
comment:13
Try looking in and seeing how many different entries you can find. Those, if they exist, should correspond to board slots for cpus. |
comment:14
Cleo has four different directories |
comment:15
It looks like on Solaris,
can be used to determine if there is something listening on port 8000, which would be useful to know for Sage. Sorry that don't help with the physical processors. To be honest, its not one of the most useful parameters though. I can't think of many Sage issues where the physical number of CPUs is going to be that important. memconf seems pretty clever on 't2,math'
knowing how many CPUs there are, how many cores they have and how many threads there are. Dave |
comment:16
One thing that would be useful is the free disk space on whatever file system someone is building Sage on. Not sure the best way to find that out. Any ideas? Dave |
Attachment: hrdwr-info.2.sh.gz |
comment:17
I attached a new file. I made the 'useless cat' and other changes. (Thanks Dave!) Some more notes:
It looks like the OS-X commands are somewhat straightforward, and the hardware is much more standardized there. Dave: We have a couple of lists of relevant Sunos commands... can we develop a single list of what is useful and what isn't? I have Open Solaris on a machine and so testing won't be an issue. John:
|
comment:18
Replying to @sagetrac-jasonbhill:
You are welcome.
You do not surprise me. I came to the same conclusion on Solaris too.
We should be able to get all the parameters that gcc was configured with
that lot can be very useful to know.
OK.
How do you propose to get the disk space? I came to the conclusion that was quite difficult, and have not found a way.
Yes. It's late here. I will get onto that after some sleep. Dave
It might be worth giving memconf a try, to see what it finds. I'm not suggesting including that, but it might confirm your guesses. If that's not the case, then it's buggy and there just aren't enough people using those cpus to make it worth fixing. |
comment:19
Replying to @sagetrac-drkirkby:
Thanks, I've done that.
memconf doesn't seem to be installed on the skynet machines, or at least I haven't found it. |
comment:20
Replying to @jhpalmieri:
On some systems it runs as a normal user process. It can be downloaded in a few seconds, change the permission to make it executable and you are ready to go. It does not need compiling- its just a perl script. On 't2' it needs root access. I have no idea on other systems. I think it would work on mark without root access. |
From sage-release:
CC: @saliola @sagetrac-jasonbhill
Component: misc
Issue created by migration from https://trac.sagemath.org/ticket/8048
The text was updated successfully, but these errors were encountered: