100% agreed with Seth here. The best practice would be to create a classification based on the variable storing the ID's you're segmenting on. Everything you want to include in the segment gets the same classification value. Using the classification uploader should be pretty quick if you have the list of ID's already.
Once you've uploaded the classification file and it's processed, you create a segment defined as 'visitors with the ID classification value of X'. Just that one segment definition would be all that's needed, and won't run into performance issues in any way.
Segments start choking once you hit around 50-100 rules, so if you have a large amount of different values, using a classification is the best way to handle it.