I can get any denomination I want from my local bank, provided I'm willing to pay a 10CDN fee and wait a few weeks.
I'll go in and say, "Mary Beth, I'd like some Euros. Fifty dollars in coinage, five hundred in 50 euro notes and a thousand in hundreds.". No problem, but it does cost a couple bucks and it is a longer wait than going somewhere with a banknote and trying to cash it in local currency.
My local bank doesn't normally carry Euros (there must be 20 different branches) but they do carry USD in addition to CDN. My parents before their last cruise and also before their road trips will go into the bank and say, "Give me two thousand dollars in small American bills.". Not a problem. They can even get 1's and 5's.
Of note, for domestic travel, I like to have some high number bills on my money belt and some buried in my backpack. Simply if I lose my wallet and need to take a cab or pay for documentation.
In my experience, the best option to get small bills, if not a bank is at a liquor store. Even if you're buying a litre of Coke, they are used to people paying with 100s and 50s. They will definitely have the change. Some liquor stores are odd about this, and they will demand small bills for a small, non-liquor purchase, but that's a rarity.
Some even offer cash back. As does Walmart.
CK