Şimdi elimde şöyle basit bir algoritma var oluşturulan şifreyi deneme yanılma ile buluyor ben mpi kullanarak bunu 10 işlemciye bölsem paralel hesaplasam mesela 0-100 arasını 1 işlemci 100-200 arasını 2. işlemci diye.Daha hızlı hesaplarım fakat bu algoritmaya mpi uygulayamadım?
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int i,a;
public void brute(int a1) {
for (int i = 0; i < 1000; i++)
{
if (a == i) textBox3.Text = "" + i;
}
}
private void button1_Click(object sender, EventArgs e)
{
a = Convert.ToInt16(textBox1.Text);
}
private void button2_Click(object sender, EventArgs e)
{
brute(a);
}
}
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int i,a;
public void brute(int a1) {
for (int i = 0; i < 1000; i++)
{
if (a == i) textBox3.Text = "" + i;
}
}
private void button1_Click(object sender, EventArgs e)
{
a = Convert.ToInt16(textBox1.Text);
}
private void button2_Click(object sender, EventArgs e)
{
brute(a);
}
}
}
gecen sene biraz bakmistim mpi'a, sadece mantigini hatirliyorum.
simdi bu durumda mesela islemi 10 process'e boleceksen pid'ler de 1...10 seklinde gidecek.
1. process 0-100 arasini
2. process 100-200 arasini...
degerlendirecek. her process kendi pid'ine bakabiliyor. oradan bakip sonrasinda her process'te for ( int i = (pid*100) - 100; i < (pid*100) ; i++ )
seklinde bir araligi dolasacaksin.
ama soyle bir durum var, ben mpi'i c'de kurcalamistim, simdi burada tum process'lerin ayni textbox'a erismesi muhtemelen mumkun olmayacak, bu sebeple her process'in aranan sayiyi bilmesi lazim.
samfisher
1