the maximum size is variable per gpu and is hard limited to
if you are running in debug will display in the logs a profile for the current configuration. you can find the feasible maximum for your device within this print out.
for instance my log looks like this
cocos2d: GL_MAX_TEXTURE_SIZE: 8192
this means i must load textures no larger than
8192x8192, though likely i'll not have any images close to that size.
you can otherwise retrieve the value like so
NSLog(@"GL_MAX_TEXTURE_SIZE is %d", size);
tilemaps are sized as you define them. you may want to have a map with a tile size of
256x256 and have
16x16 tiles in the set, so the dimensions will end up being a
256*16 = 1024px square for instance.
this is fine so long as the texture dimensions is within the GL_MAX_TEXTURE_SIZE limit.
i'll also note that the max texture size for ios devices is
2048 (iphone 3gs and 4) and
4096 (4s and beyond)