我正在开发使用scipy的complex_ode集成ODE的代码,其中被积函数包括傅里叶变换和指数运算符,它们作用于大量复杂值。
为了优化性能,我对此进行了分析,发现主要的瓶颈是(在使用PyFFTW等优化FFT之后):
val = np.exp(float_value * arr)
我目前正在使用我理解为调用C代码的numpy - 因此应该很快。但是,还有什么方法可以进一步提高性能吗?
我已经研究过使用Numba,但由于我的主循环也包含FFT,我不认为它可以被编译(nopython = True flag会导致错误)因此,我怀疑它没有提供任何收益
以下是我想要优化的代码的测试示例:
arr = np.random.rand(2**14) + 1j *np.random.rand(2**14)
float_value = 0.5
%timeit np.exp(float_value * arr)
任何建议都表示欢迎。
答案 0 :(得分:3)
我们可以利用numexpr
module,它可以有效地处理涉及超越操作的大数据 -
EnableWebSecurity
class SecurityConfig : WebSecurityConfigurerAdapter() {
override fun configure(http: HttpSecurity) {
http.authorizeRequests()
.requestMatchers(matcher)
.denyAll()
.antMatchers("/css/**", "/index")
.permitAll()
.antMatchers("/user/**")
.hasRole("USER")
http.formLogin()
.loginPage("/login")
.failureUrl("/login-error")
}
}
这似乎与文档中所述的expected performance
一致。