Resource list
Several resources can be requested when a job is submitted. A full list of resources can be found here.
By default PBS sends jobs to the last available node. Once resources on the first node are exceeded jobs will carry over to lower nodes.
You can specify nodes as a number, or by naming nodes individually by hostname. Specifying nodes by number (e.g. "qsub -l nodes=8") seems to behave as if it assumes nodes are the same as processor cores. Specifying 9 nodes in this case would use all 8 processors on node 9, and one processor on node 8. This seems to work up to 27 processors, after which it returns the error:
"qsub: Job exceeds resource limits MSG=cannot locate feasible nodes"
I'm still working on figuring out why this is the case.
Individually naming nodes will allow you to select specific nodes, and to assign jobs to all nodes. The syntax for this is "qsub -l nodes=node4+node5+node6". You can specify as many nodes as you want in this way, but it doesn't seem to work if you choose nodes out of sequence (3,5, and 9, for example). It seems that specifying nodes this way defaults to using one processor per node. You can, however, specify a number of processors to use on each node. The syntax is "qsub -l nodes=node2:ppn=8+node3:ppn=2" (which would specify 8 processors on node2 and two on node3).