std::map和stdext::hash_map效率问题

近期,接到一个项目,由于需要在程序运行中解析一部分数据,且该部分数据需要向后提供。
所以前同事在设计时使用了stdext::hash~map。
近期在优化该程序,需要将处理能力提高100%,我从IO,队列锁等方面改了一大通,现在效率才提高50%。
所以想问下经验较多的人,map和hash~map效率到底差距有多少(结合我的使用场景)。

1、每个map(hash~map)最多只有100个数据,键值为string
std::map
键值长度4~30个字符不等,且会存在汉语(会影响效率吗)
2、每个处理逻辑map均会重新构建,
两者插入效率是否差异较大。
3、查询效率,该部分自己已经写代码测试过。两者效率(vs2008+STLport)差异不大,查询10万次hash~map约少个1毫秒。(GetTicketCount());

由于现在想知道,但是手头没有电脑,没法测试,想问下大家具体的经验。最好是自己做过实验的。

简而言之 map是二叉树结构 hashmap是哈希表结构
http://blog.csdn.net/dongtingzhizi/article/details/8629285
http://stackoverflow.com/questions/2189189/map-vs-hash-map-in-c

map是排序的红黑树,查找速度比hash表要慢一点。
不够你应该需要先看是不是时间性能主要处在map查找上。

用intel c++编译器编译下, 什么代码不改,都能比fcc快20%,比vc快30%,然后检测下热区,再调优下即可。