原帖由 bcyj 于 2008-9-14 18:38 发表
不用楼上这么特殊。。。
就这样就可以
volatile BYTE * g_Byte;
线程一:
for(;;)
{
BYTE bTemp;
g_Byte = &bTemp;
*g_Byte = 1;
}
线程二
for(;;)
{
g_Byte = NULL;
}
AMD不挂,core核心的必挂,独 ...
原帖由 bcyj 于 2008-9-14 18:38 发表
不用楼上这么特殊。。。
就这样就可以
volatile BYTE * g_Byte;
线程一:
for(;;)
{
BYTE bTemp;
g_Byte = &bTemp;
*g_Byte = 1;
}
线程二
for(;;)
{
g_Byte = NULL;
}
AMD不挂,core核心的必挂,独 ...
原帖由 bcyj 于 2008-9-14 18:38 发表
不用楼上这么特殊。。。
就这样就可以
volatile BYTE * g_Byte;
线程一:
for(;;)
{
BYTE bTemp;
g_Byte = &bTemp;
*g_Byte = 1;
}
线程二
for(;;)
{
g_Byte = NULL;
}
AMD不挂,core核心的必挂,独 ...
原帖由 FENG950 于 2008-9-14 21:06 发表
同一个变量同时拥有了不同的值,结果就搞错了。另外,如果是这样的话,AMD的cache如何保证一致性呢?某核心在cache里修改了某块内存拷贝的值,其它核心懵然不知.....
原帖由 weiliu86 于 2008-9-15 08:07 发表
嘿嘿,别看DELPHI现在不吃香了,但写些小程序还是DELPHI最快速方便,还可以嵌入汇编,还有大量现成的控件支持,省事,特别适合于像我这样的非程序员人士。
原帖由 tansailuffy 于 2008-9-15 09:02 发表
{lol:] 作为一名QA,还是建议你把问题明确的提给你的Leader,把风险说明。这种程序上的Bug最好还是改掉。虽然不知道程序的使用者是贵公司,还是要卖给其他用户。如果是自己公司使用,固然可以配一台AMD平台的生产机 ...
原帖由 rx78meng 于 2008-9-15 01:15 发表
楼上几个
本楼不管怎么看,都是amd得了一小分
怎么说着说着,正常跑程序的amdu变成bug了
不同架构的cpu,有的能跑有的不能跑很正常的吧,i u不能跑的东西,别人能跑就是bug阿?
本来没有什么好研究的东西 ...
原帖由 rx78meng 于 2008-9-15 01:15 发表
楼上几个
本楼不管怎么看,都是amd得了一小分
怎么说着说着,正常跑程序的amdu变成bug了
不同架构的cpu,有的能跑有的不能跑很正常的吧,i u不能跑的东西,别人能跑就是bug阿?
本来没有什么好研究的东西,楼上几个太过分了


原帖由 bcyj 于 2008-9-14 18:38 发表
不用楼上这么特殊。。。
就这样就可以
volatile BYTE * g_Byte;
线程一:
for(;;)
{
BYTE bTemp;
g_Byte = &bTemp;
*g_Byte = 1;
}
线程二
for(;;)
{
g_Byte = NULL;
}
AMD不挂,core核心的必挂,独 ...
原帖由 百分百好牛 于 2008-9-15 10:26 发表
首先程序的确是有问题,是程序员的问题,没有处理同步。
但跑错误的程序,应该得到的是错误的结果,逻辑上才说得过去。
但这个地方,AMD的U跑这个错误的程序居然没有crash说明什么,说明U在设计时有些部分有问 ...
原帖由 coolhair 于 2008-9-15 19:20 发表
我的真没挂,因为程序太简单,另一个进程没机会改写地址。然后我在g_Byte = &bTemp;和*g_Byte = 1;两条语句间加了一句输出,用来延时,这次果然挂了。
说老实话我也不相信这程序在AMDX2上会不挂,有的同志们试 ...
原帖由 rx78meng 于 2008-9-15 01:15 发表
楼上几个
本楼不管怎么看,都是amd得了一小分
怎么说着说着,正常跑程序的amdu变成bug了
不同架构的cpu,有的能跑有的不能跑很正常的吧,i u不能跑的东西,别人能跑就是bug阿?
本来没有什么好研究的东西 ...
原帖由 沙门 于 2008-9-18 01:06 发表
正确的程序输出正确的结果,错误的程序输出错误的结果,才叫正常。
错误的程序也被CPU顺利跑下来了,而且对于这样的结果,事先无法预知,
叫正常么。
原帖由 rx78meng 于 2008-9-15 01:15 发表
楼上几个
本楼不管怎么看,都是amd得了一小分
怎么说着说着,正常跑程序的amdu变成bug了
不同架构的cpu,有的能跑有的不能跑很正常的吧,i u不能跑的东西,别人能跑就是bug阿?
本来没有什么好研究的东西 ...
原帖由 沙门 于 2008-9-18 01:06 发表
正确的程序输出正确的结果,错误的程序输出错误的结果,才叫正常。
错误的程序也被CPU顺利跑下来了,而且对于这样的结果,事先无法预知,
叫正常么。
| 欢迎光临 POPPUR爱换 (https://we.poppur.com/) | Powered by Discuz! X3.4 |