exCNF에서 각 행에 접근한 뒤에 여러 비교를 하고 값을 변경하는 건데 gpu연산은 조건문이 많으면 성능이 떨어진다고 들었습니다. cuda를 쓰면 성능 향상이 없을까요? 아니면 쓰는 것 자체가 어려울까요?
while True:
for num in range(length):
clause = exCNF[num] # exCNF는 2차원 어레이입니다
clause_ = np.array([0]*3)
eli = False
alive = 0
dead = 0
for cc in range(3):
literal = clause[cc]
if literal != 0:
alive += 1
if literal in trueletter: # tureletter는 set입니다
eli = True
elif -literal in trueletter:
dead += 1
elif -literal not in trueletter and literal not in trueletter:
clause_[cc] = literal
if eli == True:
exCNF[num] = np.array([0]*3)
elif eli == False:
exCNF[num] = clause_
elif eli == False and alive == dead and alive > 0:
solution = False