市场充斥着VPS(虚拟专用服务器)托管选项.似乎每个人和他们的母亲在他/她的衣橱里都有一个超载的服务器.企业选择总是看起来非常高,这使得那些便宜且声称企业级别的产品看起来很不稳定.
您在高质量的VPS提供商(语言支持,24/hr技术等)中寻找什么,以及如何检查他们的可信度?
所以,我有一个OpenGL ES 2.0应用程序.它在iPhone/iPad模拟器上,在真正的iPhone/iPad上,在Windows下使用Imgtec的仿真器库(即PVRVframe)进行编译和运行.
在所述应用程序中,我有一个特定的绘制调用,导致没有像素写入目标,即使我可以查询的所有状态看起来合理(视口,深度测试/模板测试/剔除/混合关闭,帧缓冲完成等),并且AFAICT我正在提交合理的顶点数据.
我现在所追求的是一个像Pix/GPAD一样的工具,让我逐步完成场景并审查状态,我不能直接从OpenGL中查询相关的绘图调用(例如实际的顶点/索引缓冲区内容) ).
PVRTrace和OSX仪器似乎都没有捕获足够的状态来调试这类问题.特别是,它们不捕获顶点/索引缓冲区或纹理数据(OSX仪器也不捕获着色器源).
gDEBugger,以前是关于Stack Overflow的这类问题的答案,现在是版本5.8 - 它已经免费,这很好,但不再支持OpenGL ES 2(在Windows下,没有ES2可渲染的配置可通过EGL获得;在OSX,没有办法将调试器连接到在模拟器或真实设备上运行的应用程序) - 这不是很好.
我错过了一些明显的东西吗 我有什么选择?其他人如何调试他们的场景?
可能重复:
组合陀螺仪和加速度计数据
我已经阅读了很多论文Kalman filters,但似乎没有什么好的公开可访问的工作实例从数学论文到实际工作代码.
我有一个系统,包含一个三轴加速度计和一个陀螺仪测量围绕其中一个加速度计轴的旋转.该系统设计为由人控制,并且陀螺仪将在很大程度上测量围绕重力矢量或靠近重力矢量的旋转.(在同一行业工作的人可能会认识到我正在谈论的内容;))我意识到这是不受约束的.
陀螺仪似乎具有接近恒定的偏差,对于系统的每个实例略有不同.如何在系统倾斜时使用加速度计读数来校准陀螺仪,以便陀螺仪轴与重力不共线,并围绕陀螺仪轴旋转,我将如何编码滤波器以使用加速度计读数来校准陀螺仪?似乎应该有足够的信息来做到这一点,但被告知没有,为什么会是一个答案:)
IEEE754要求NaNs无序; 当一个或两个操作数都是NaN时,小于,大于,等于都应该返回false.
F F F F F T在使用g ++在所有优化级别编译时,以及使用VC++的CL.exe(32位版本15.00.30729.01)编译时没有优化参数或/ Od,/ fp:fast的任意组合,下面的示例产生正确的预期结果, /弓:SSE.
但是,当使用/ O1或/ O2(以及任何其他优化参数)编译时,T T F F F T结果,即使使用/ Op也指定.
CL.EXE的64位版本产生了许多变化- ,,T T F F F T 等-这取决于优化级别,以及是否/ FP:快被指定,但与32位版本,兼容的行为似乎只可以与所有的优化禁用.T T T F F TT T T F F F
我犯了一些明显的错误吗?有没有办法让编译器在不牺牲所有其他优化的情况下遵守标准?
#include <limits>
#include <stdio.h>
int main( int argc, char const ** argv )
{
float test = std::numeric_limits<float>::quiet_NaN();
printf( "%c %c %c %c %c %c\n",
(test < test) ? 'T' : 'F',
(test …Run Code Online (Sandbox Code Playgroud) 好的,我得到了视频格式的基础知识 - 有一些容器格式,然后你有核心视频/音频格式.我想编写一个基于Web的应用程序来确定文件使用的视频/音频编解码器.
我如何以编程方式确定视频编解码器?是否最好通过系统调用使用标准库并解析其输出?(例如ffmpeg,转码等?)
通过Analyze仪器给出的OpenGL API使用性能警告列表,我发现我们每帧生成几个逻辑缓冲区加载 - 我们没有清除缓冲区的地方因为绘制调用完全覆盖它.
与直觉相反,引入glClear()针对这些案例的调用只是将警告的位置移动到glClear()调用.苹果实施GL_EXT_discard_framebuffer,但是单独使用它也不足以阻止警告.A glDiscardFramebufferEXT()后跟a glClear()会停止警告,并显着提高性能,但glClear()调用本身需要时间来清除缓冲区,在我们的用例中这是一个冗余操作.
其他人是否也发现他们需要调用这两个函数以避免重新加载成本或者我错过了什么?是否有一种廉价的方式暗示OpenGL,帧缓冲的内容即将被完全覆盖,因此不需要重新加载到tile内存中?
我正在尝试对支持不佳的原型嵌入式平台进行一些性能分析.
我注意到GCC的-pg标志导致__gnu_mcount_nc在每个函数的入口处插入thunk .没有__gnu_mcount_nc可用的实现(并且供应商对协助不感兴趣),但是因为编写一个简单记录堆栈帧和当前循环计数的操作是微不足道的,所以我已经这样做了; 这工作正常,并且在调用者/被调用者图和最常被称为函数方面产生有用的结果.
我真的想获得有关在函数体中花费的时间的信息,但是我很难理解如何只使用条目而不是退出来解决这个问题,每个函数都被钩住了:你可以确切地知道每个函数的确切时间输入,但没有挂钩退出点,你不知道多少时间,直到你收到下一条信息属于被叫者和呼叫者多少.
尽管如此,GNU概要分析工具实际上可以在许多平台上收集函数的运行时信息,因此可能开发人员在实现这一目标时需要考虑一些方案.
我已经看到一些现有的实现,它们执行诸如维护阴影调用堆栈并将入口处的返回地址旋转到__gnu_mcount_nc,以便在被调用者返回时再次调用__gnu_mcount_nc; 然后,它可以将调用者/被调用者/ sp三元组与影子调用堆栈的顶部进行匹配,从而将此案例与条目调用区分开来,记录退出时间并正确返回调用者.
这种方法还有很多不足之处:
是否有一些明显更好的方法来实现__gnu_mcount_nc,以便-pg构建能够捕获函数退出以及我缺少的入口时间?
我用Java实现了一个数据包分析器.现在我想检测捕获的数据包是否是恶意的.例如,如何使用Java代码检测DOS攻击?TCP数据包的合法大小是多少?如果大小超过合法大小,该数据包是否可被视为恶意?