[backend]更新脚本和库以支持性能测试用例
This commit is contained in:
84
testdata/performance/h-8-01.sy
vendored
Normal file
84
testdata/performance/h-8-01.sy
vendored
Normal file
@ -0,0 +1,84 @@
|
||||
//#include "sylib.h"
|
||||
int n = 14;
|
||||
int seq[1400];
|
||||
int table[1400][1400];
|
||||
|
||||
void kernel_nussinov(int n, int seq[], int table[][1400])
|
||||
{
|
||||
int i, j, k;
|
||||
i = n - 1;
|
||||
while (i >= 0)
|
||||
{
|
||||
j = i + 1;
|
||||
while (j < n)
|
||||
{
|
||||
if (j - 1 >= 0)
|
||||
{
|
||||
if (table[i][j] < table[i][j - 1])
|
||||
{
|
||||
table[i][j] = table[i][j - 1];
|
||||
}
|
||||
}
|
||||
if (i + 1 < n)
|
||||
{
|
||||
if (table[i][j] < table[i + 1][j])
|
||||
{
|
||||
table[i][j] = table[i + 1][j];
|
||||
}
|
||||
}
|
||||
if (j - 1 >= 0 && i + 1 < n)
|
||||
{
|
||||
if (i < j - 1)
|
||||
{
|
||||
int temp = 0;
|
||||
if (((seq[i]) + (seq[j])) == 3)
|
||||
{
|
||||
temp = 1;
|
||||
}
|
||||
if (table[i][j] < table[i + 1][j - 1] + temp)
|
||||
{
|
||||
table[i][j] = table[i + 1][j - 1] + temp;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (table[i][j] < table[i + 1][j - 1])
|
||||
{
|
||||
table[i][j] = table[i + 1][j - 1];
|
||||
}
|
||||
}
|
||||
}
|
||||
k = i + 1;
|
||||
while (k < j)
|
||||
{
|
||||
if (table[i][j] < table[i][k] + table[k + 1][j])
|
||||
{
|
||||
table[i][j] = table[i][k] + table[k + 1][j];
|
||||
}
|
||||
k = k + 1;
|
||||
}
|
||||
j = j + 1;
|
||||
}
|
||||
i = i - 1;
|
||||
}
|
||||
i=0;
|
||||
while(i < n) {
|
||||
j = 0;
|
||||
while (j < n) {
|
||||
table[i][j] = table[i][j] % 10;
|
||||
j = j +1;
|
||||
}
|
||||
i = i +1;
|
||||
}
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
getarray(seq);
|
||||
getarray(table);
|
||||
starttime();
|
||||
kernel_nussinov(n, seq, table);
|
||||
stoptime();
|
||||
putarray(n * n, table);
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user