Its basically sizing analysis which I agree to as mentioned by JRK, is not a small activty but a number of things that have to be taken in consideration. We would need to work on to find which type of reports are used mostly (i.e. is data fetched from BW or RDBMS). According to backend database, the number of services and memory allocation would need to be looked into.
You are right here that we will need to recognise the fact that there can be 1000 concurrent active users. However it need not be a scenario where all the concurrent users would be consistently working on reports. (performing view / refresh or schedule activity) Even performing such activty the load can be very minimal.
Mostly the first implementation is not usually very successfull where performance is concerned as the administrators would not be able to identify the usage of reports by end users. However after a time frame, say 3-4 months, a conclusion can be made and servers can be sized accordingly to give better performance.